Cи тілінде бағдарламалау Берикжан Касымов, 2018-2019



Pdf көрінісі
бет33/34
Дата28.06.2022
өлшемі2.75 Mb.
#459535
1   ...   26   27   28   29   30   31   32   33   34
devcpp 1 Kaz66

k = random (N) + a; 
[a, a + N-1] интервалындағы тізбекті береді. Бізге [a, b] интервалындағы 
сандар тізбегін табу керек, сондықтан біз b = a+ N -1, осыдан N=b-a+1 болады. 
Сондықтан
 
[a, b] интервалында кездейсоқ бүтін сандарды бірқалыпты реттелген түрде 
алу үшін k = random( b - a +1)+a; формуласы қолданылады.
Кездейсоқ нақты сандарды анықтау киын болатын болды. Егер rand () 
функциясының нәтижесін RAND_MAX функциясына бөліп жазайық: 
x = (float) rand () / RAND_MAX; 
онда біз [0, 1) интервалындағы кездейсоқ нақты сандарды аламыз.
Интервалдың ұзындығы [0, 1) мұндай тізбекте 1-ге тең, ал бізге b-a интервалын-
дағы сандар тізбегі керек. Егер біз осы санды b-a –ға көбейтіп жіберсек және оны 
a –ның мәніне қосатын болса, онда бізге керекті интевалды аламыз. 
 
[a, b] интервалында кездейсоқ нақты сандарды бірқалыпты реттелген түрде 
алу үшін k = rand ( ) *(b-a)/RAND_MAX + a; формуласы қолданылады.


Cи тілінде бағдарламалау Берикжан Касымов, 2018-2019 
 
61 
http://astanabilim.kz/infor/c
  
Осыған дейін біз бірқалыптты реттелген кездейсоқ сандарды қалай алу 
керектігі жайында қарастырдық. Ал бірқалыпсыз ретпен кездейсоқ сандарды 
қалай алуға болады? Бұл сұраққа математиктер былай жауап береді:
бірқалыпты реттенлгенен бірқалыпсыз реттелмеген алуға болады, алдынағы 
есептеулердегі мәліметтерге кейбір математикалық амалдарды қолдану арқылы. 
Мысалы сандардың негізгі бөлігі интервалдың ортасында орналасқан болса
онда бірқалыпты реттелген бірнеше кездейсоқ сандардың орташа арифметика-
лық мәнін алу керек болады.
  Экрандағы қар 
Төменде х-тің [0, 399] интервалындағы кездейсоқ сандарды генерациялаудың 
бағдарламада қолданудың мысалы көрсетілген. Ал у-тің мәнін [0, 299] 
интервалындағы кездейсоқ сандар және нүктенің түсін (x, y) координаттары 
бойынша тексереді. Егер ол нүкте қара түсті болса, онда оның т.сін кездейсоқ 
орнатады, ал егер жоқ болса, онда қара түске бойайды. Кездейсоқ түс Color 
стандартты функциясының көмегімен орындалады. Ол негізгі үш түстің 
жиынтығынан тұрады: қызыл (R), жасыл (G) және көк (B). Түсті [0, 255] 
интервалынан кездейсоқ таңдайды. 


Cи тілінде бағдарламалау Берикжан Касымов, 2018-2019 
 
62 
http://astanabilim.kz/infor/c
  
  Қандай жаңа жаңалықтар алдыңдар?

қандай да бір перне басылғандығын kbhit функциясы арқылы анықтаға 
болады. Егер бұл функцияның нәтижесі перне басылса 0-ге тең, егер 
перне басылмаса және нәжижесінің мән 0-ге тең болмаса, онда 
кезкелген перне басылды. Осы перненің кодын анықтау үшін getch 
функциясын шақыру қажет. Бұл жағдай үшін цикл «әзірше перне 
басылған жоқ» былай жазылады: 
while ( ! kbhit ( )) {. . .} 

нүктенің ағымдағы түсін алу үшін getpixel функциясы қолданылады. 


Cи тілінде бағдарламалау Берикжан Касымов, 2018-2019 
 
63 
http://astanabilim.kz/infor/c
  


Достарыңызбен бөлісу:
1   ...   26   27   28   29   30   31   32   33   34




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет