Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабароториялы жмыс 1,2.docx на завтра.docx
Скачиваний:
10
Добавлен:
21.02.2016
Размер:
131.46 Кб
Скачать

Әдістемелік нұскаулар:

Тәжірибеде келтірілген берілгендер немесе аралық нәтижелердің мәндеріне байланысты кейбір операторлары орындалатын, ал қалған операторлары орындалмайтын алгоритмдер кездеседі. Мұндай алгоритмдерді тармақталушы құрылымды алгоритмдер деп атайды. Басқаша айтқанда, алгоритмдік тілде қойылған шартқа байланысты екi немесе екiден де көп тармақтары бар алгоритмді тармақтақталушы құрылымды алгоритм деп атайды.

Осы алгоритмді программалау барысында көшу операторлары және таңдау операторы қолданылады. Көшу операторлары екіге бөлінеді: шартты көшу операторы және шартсыз көшу операторы.

Шартты көшу операторы

Шартты көшу операторы жағдайында таңдалынған оператор тек қайсыбір шарт ақиқат болса ғана орындалады. Егер шарт жалған болса, else сөзінен кейінгі оператор орындалады.

Оператордың толық жазылуы:

if <шарт> then <1-оператор> else <2-оператор>

Егер онда әйтпесе

Шартты оператордың блок-схемасы

Мысалы: 3 сан берілген. Олардың ең үлкенін анықтау керек.

read (а,b,с);

if (a>b) and (a>c) then m:=a

else if b>c then m:=b else m:=c;

writeln('max=',m);

Шартсыз көшу операторы

Шартсыз көшу операторы операторлардың орындау тәртібін өзгерту үшін пайдаланады. Бүл оператор бойынша, бүтін сан болып келетін әрбір белгі программа мәтінінде, белгі қолданылған бөлімде, алдын–ала хабарлануы, яғни енгізілуі қажет. Паскаль тілінде олар белгілерді сипаттау бөлімінде үтір арқылы көрсетіледі label 1,2,3.

Белгі - 1-ден 9999-ға дейінгі натурал сан. Ол белгілерді сипаттау бөлімінде сипатталуы қажет.

Шартсыз көшу операторының жалпы жазылуы:

GOTO белгi;

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

Басқаруды «алға» көшіру

Таңдау операторы

Таңдау операторы әрқайсысы селектор типті тұрақтылар түрінде берілген ерекше белгілерден тұратын операторлар тізімінен және өрнектен (селектор) тұрады. Селектор типі скалярлық болуы тиіс, бірақ нақты бола алмайды.

Таңдау операторы (нұсқа операторы) белгі селектордың ағымдық мәніне тең операторды орындау үшін таңдайды. Егер тізімде ондай белгі болмаса, онда else сөзінен кейін жазылған оператор орындалады, ал егер else тобы болмаса, онда тізімдегі бірде-бір оператор орындалмайды, және программаның орындалу кезегі таңдау операторынан кейін тұрған келесі операторға ауысады. Таңдалынған оператор орындалуы аяқталған соң программаның орындалу кезегі нұсқа операторының соңына ауысады.

Таңдау операторының жазылуы:

case өрнек of

1-белгі: 1-оператор;

2-белгі: 2-оператор;

……………………

n-белгі: n-оператор

else (n+1)-оператор;

end;

Белгі үтірлермен ажыратылып жазылатын еркінше алынған тұрақтылардан немесе аралықтардан тұруы мүмкін. Селектор-өрнек және белгілар бір қарапайым типті болуы тиіс. (real типінен басқа).

Таңдау операторына мысал: цифрмен өрнектелген бағаның айтылу мағынасын беру керек.

readln(ос);

case ос of

2: SL:='қанағаттанғысыз'

3: SL:=' қанағаттанарлық'

4: SL:='жақсы'

5: SL:='өте жақсы'

end;

writeln (SL);

Мысалы: у=

функциясын есептейтін программа құрыңыз. Х айнымалысы аралығында 0,4 қадаммен өзгереді.

Программа басында х айнымалысының бастапқы мәнін және қадамды енгізу қажет. Бастапқы мәнді есептеп, келесі мәнді есептеуге көшу үшін белгіні пайдаланамыз. Белгі программа атынан соң label қызметші сөзімен сипатталады. Функция айнымалы мәніне байланысты бірнеше тармақпен есептелетіндіктен, шартты көшу операторын пайдаланамыз.

Program TKAlg;

Label 1;

Var x,y,h:real;

Begin

x:=-1; h:=0.4;

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

begin

If x<0 then y:=21-x

else if x<=2 then

y:=21+x else y:=8;

writeln (‘y=’,y:3:2);

x:=x+h; goto 1;

end;

End.