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



Pdf көрінісі
бет18/34
Дата28.06.2022
өлшемі2.75 Mb.
#459535
1   ...   14   15   16   17   18   19   20   21   ...   34
devcpp 1 Kaz66

 
Есеп. Екі бүтін санды бөлудегі бүтін және қалдық бөлігін анықтайтын 
бағдарлама құр. Бағдарлама циклде орындалуы қажет, яғни бөліндінің және 
бөлінгіштің мәнін анықтайды, нәтижесін шығарады, т.с.с. осылай 
қаталайды. Егер екі санда нольге тең болса, онда циклден шығу керек және 
бағдарламаның жұмысын аяқтау қажет. Бағдарлама екінші санның нольге 
тең болғанда «Санды нольге бөлуге болмайды» деген қатені шығаратындай 
болу қажет. 
Осы есептің ерекшелігі мынада: циклге кіріп, циклдің соңына дейін кезекті 
қадамдарды орындау қажет ендігіне, не қажет емес пе екендігін анықтай 
алмаймыз. Керекті ақпаратты тек мәліметтерді пернетақтадан енгізгенен кейін 
ғана ала аламыз. Сондықтан бұл жерде шексіз аяқталмайтын цикл қолданылады 
while (i) {. . .} (Си тілінде бір саны ақиқат шартқа жататын есекеру керек).
Мұндай циклден тек арнайы break операторының көмегімен шығу қажет.


Cи тілінде бағдарламалау Берикжан Касымов, 2018-2019 
 
29 
http://astanabilim.kz/infor/c
  
Егер екінші сан нольге тең болса, онда циклдің қалған бөлігін орындаудың 
қажеті жоқ. Ол үшін continue операторы қызмет атқарады.
  Қандай жаңа түсініктер алдық?

Цикл денесінде есептерді жүргізу және циклді жалғастыру тек циклдің ішінде 
ғана мүмкін болады (мысалы, берілген мәндерді енгізу кезінде), көбінесе 
ішінде break операторы бар шексіз тоқтамайтын цикл қолданылады. 

break операторының көмегімен кезкелген (for, while, do-while) циклдан 
мерзімінен бұрын шығуға болады.

Кезекті қадамды мерзімінен бұрын аяқтау үшін және бірден келесі қадамға өту 
үшін continue операторы қолданылады.

Тізбектің қосындысын есептеу 
  Элементтердің берілген санға дейінгі қосындысы 
 
Есеп. Тізбектің бірінші 20 элементінің қосындысын табу керек 
𝑆 =
1
2

2
4
+
3
8

4
16
+ ⋯ 
Бұл есепті шешу үшін элементтердің өзеру заңдылығын анықтау керек. 
Берілген жағдайда нені өзгертуге болады: 
 кезкелген элемент бөлшек бөлып саналады; 


Cи тілінде бағдарламалау Берикжан Касымов, 2018-2019 
 
30 
http://astanabilim.kz/infor/c
  
 бөлшектің алымы келесі элементке өткен сайын 1-ге артып отырады; 
 бөлшектің бөлімі келесі элементке өткен сайын 2 есе артып отырады
 бөлшектердің алдындағы таңбалары кезектеп ауысып отырады (плюс, 
минус және т.с.с). 
Тізбектің кезкелген элементін төмендегідей түрде жазуға болады 
а
𝑖
=
𝑧𝑐
𝑑
Мұндағы, z, c және d айнымалыларының өзгеруі келесі кестеде көрсетілген 
(бастапқы бес элемент үшін) 








-1 

-1 











16 
32 
z айнымалысының таңбасы өзгереді (бұл амалды былай жазуға болады z=-z), с-
айнымалысы 1-ге артып отырады (с++), ал d айнымалысы 2-ге көбейтіледі 
(d=d*2). Есепті шығару жолының алгоритмін мынандай қадамдарға бөліп жазуға 
болады: 
 S айнымалысының 0 мәнін береміз; бұл ұяшықта қосынды есептеледі; 
 z, c және d айнымалыларының бастапқы мәндері (бірінші элементке)
z=1, c=1, d=2.
 20 рет орныдау: 

қосындының мәніне кезектегі элементтің мәнін қосады; 
o z, c және d айнымалыларының мәндеріне келесі кезектегі элемент-
тің мәнін беру. 


Достарыңызбен бөлісу:
1   ...   14   15   16   17   18   19   20   21   ...   34




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

    Басты бет