Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРС-АСД.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
436.74 Кб
Скачать

If тармақталу командасы.

if тармақталу командасын басқаша- шартты команда деп те атайды. Оның екі формасы бар: толық және қысқа. Тармақталу командасының толық формасының көрінісі мынадай:

if <логикалық өрнек> then < 1 команда >

else < 2 команда >;

Команда әрекеті. Егер логикалық өрнек ақиқат болса, онда 1 команда орындалады, қарсы жағдайда – 2 команда орындалады. 1 және 2 командалар қарапайым немесе күрделі болуы мүмкін. Мысал. х=9 болсын. Команданың орындалу нәтижесінде

if х > 7 then у := х * х else у := sin(x);

if х < 5 then z := exp(x) else z := sqrt(x);

у = 81, z = 3 болады.

Мысал. а=5 болсын. Команданың орындалу нәтижесінде

if a < 7 then begin

b := а - 2;

с := 1 + 2 * а

end

else begin

b := 2 + 5* a;

с := 12 - 4 * (а - 3)

end;

Нәтиже : b=3, с=11.

Тапсырманың орындалу үлгісі. Қолданушы анықтаған х нүктесінде күрделі у функциясының мәнін есептеу және шығару керек,

y=

program Myfunction;

uses Crt;

var х, у : real;

begin

clrscr;

writeln(х мәнін енгізіңіз');

readln(x);

if x < -1 then у := ln(abs(x)) else

if (x >= -1) and (x < 1) then у := sin(x)

else у := cos(x);

writeln('x =', x:5:2, ' у =', y:5:2);

readln

end.

Ескерту. if командасында else қызметші сөзінің алдына «;» символы қойылмайды.

Тармақталу командасының қысқа формасының көрінісі мынадай:

if <логикалық өрнек> then < 1 команда >;

Команда әрекеті. Егер логикалық өрнек ақиқат болса, онда 1 команда орындалады, жалған болса if конструкциядан кейінгі команда орындалады.

Мысал. х=25 болсын. Команданың орындалу нәтижесінде

if х > 12 then у := 2 * х; z := 10;

if x < 5 then z := 10 + х / 2;

Нәтиже у = 50, z = 10.

Goto командасы.

goto командасы — бұл шартсыз өту командасы. Ол программада команданың орындалу тізбектерін өзгерту үшін, кейбір команданы белгі арқылы басқаруға арналған. Команданың түрі

goto <белгі>;

Программада белгі кез келген команданың алдында тұруы мүмкін. Ол командадан қос нүкте(:) арқылы бөлінеді : <белгі> : <команда>;

Белгіні алдын-ала label бөлімінде хабарлау керек: label <белгілер тізімі>; Белгі идентификатор 0 ден 9999 дейінгі сан болуы мүмкін.

Тапсырманың орындалу үлгісі. ах2 +bх+с=0, a¹0 квадраттық теңдеудің коэффициенттер мәнінің бірнеше варианттарын шығару керек. Әр вариант үшін нақты түбірінің бар екені туралы хабарлау шығару керек.

program Uravnenia;

uses Crt;

label 99, finish;

var a, b, c, d, x, у : real;

begin

clrscr;

99: writeln(‘квадраттық теңдеудің коэффициенттерін шығарыңыз’);

readln(a, b, с);

if a = 0 then goto finish;

d := b * b - 4 * a * c;

if d >= 0 then writeln(' Берілген теңдеудің нақты түбірі бар')

else begin

writeln('Деректер нақты берілмеген');

writeln('Теңдеудің нақты шешімі жоқ');

goto 99;

end;

finish: readln

end.

Ескерту. Ішкі программа ортасындағы немесе құрама команданың ортасындағы командаға басқаруды беруге болмайды.

Тапсырма варианттары:

13.

14.

-1 СӨЖ-дің бесінші тапсырмасы: