Программалау Жұмыстың мақсаты



Pdf көрінісі
бет2/8
Дата29.09.2022
өлшемі309,47 Kb.
#151191
түріПрограмма
1   2   3   4   5   6   7   8
Байланысты:
Лабораторная работа №3 на КАЗ
Вдоль домов и тротуаров
while (шарт) операторы 
Әрине, мұндай циклден шығу керек, мысалы, break операторы, 1.5 
листингінде жасалғандай. Әйтпесе, бағдарлама тоқтап қалады және оны 
Unix-те немесе Windows-тағы Task Manager терезесі арқылы + 
пернелер тіркесімімен тоқтатуға тура келеді. Егер циклге бірнеше 
операторды қосу қажет болса, онда {} мәлімдемелер блогын құру керек.


Екінші циклдік операторы - do-while операторы-оның жазылу түрі 
келесідей: 
do оператор while (логикалық өрнек) 
Мұнда алдымен оператор орындалады, содан кейін логикалық өрнегі 
есептеледі. Цикл логикалық өрнегі true-ге тең болғанша орындалады. 
Назар аударыңыз!!! Do-while циклінде циклдің соңы емес, 
жалғастыру шарты тексеріледі. 
Осы екі цикл операторларының арасындағы маңызды айырмашылық 
тек do-while циклінде оператор міндетті түрде кем дегенде бір рет 
орындалады. 
Мысалы, [a; b] аралығында дәл бір түбірі бар f(x) функциясы берілсін. 
1.5 программа листингісінде түбірді табу үшін қақ бөлу бөлу әдісімен 
есептейтін программа көрсетілген. (басқаша бисекция немесе дихотомия 
әдісі деп аталады). 
Программа листингі. Бисекция әдісімен сызықты емес теңдеудің 
түбірін табу.
class Bisection{ 
static double f(double x){ 
return x * x * x-3*x * x + 3; // немесе басқа өрнек... 

public static void main(String[] args){
double a = 0.0, b = 1.5, c, y, eps = 1e-8;
do{ 
c = 0.5 *(a + b); y = f(c); 
if (Math.abs(y) < eps) break; 
// Түбір табылды. Біз циклден шығамыз 
// Егер кесіндінің [a; c] аралығында функция әртүрлі таңбалардан 
тұрса: 
if (f (a) * y < 0.0) b = c; 
// Демек, түбірі осында. В нүктесін с нүктесіне жылжытамыз 
// Әйтпесе:
else a = c; 
// А нүктесін с нүктесіне жылжытыңыз 
// Біз [a; b] кесіндісі азайғанша жалғастырамыз 
} while(Math.abs(b-a) >= eps);
System.out.println("x = " +c+ ", f(" +c+ ") = " +y); 


Bisection класы алдыңғы мысалдарға қарағанда күрделі: онда негізгі 
main() әдісінен басқа f(x) функциясын есептеу әдісі де бар. Мұнда f(x) әдісі 
өте қарапайым: ол көпмүшенің мәнін есептейді және оны функцияның мәні 
ретінде қайтарады, мұның бәрін бір оператор орындайды: 
return өрнек 
main() әдісінде тағы бір жаңа оператор пайда болды — break, егер біз 
түбірдің шамаланған мәнін кездейсоқ кездестірсек break операторы циклдің 


орындалуын тоқтатады. Мұқият оқырман f(x) әдісін жариялауда static 
модификаторының пайда болуын байқады. Бұл f(x) әдісі статикалық main() 
әдісінен шақырылғандықтан қажет, оны келесі дәрісте талқылаймыз. 


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8




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

    Басты бет