Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 1-07-1 Язык программирования (продолжение).docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
80.52 Кб
Скачать

Var yfx:real;

Begin

writeln('x= ');

readln(x); {ввод х}

if (x>0)and(x<2) then y:=Sqr(cos(x)) else y:=1-sin(sqr(x));

{вычисление значения у}

writeln(‘y(’,x:8:2,’)=’,y:8:2); {вывод значения у на экран}

readln; {пауза}

End.

Пример.

Написать программу, которая в переменную max запи­сывает наибольшее из двух чисел х и у.

Решение:

Program wetw2;

Var max,X,y:real;

Begin

write(‘x= ’);

readln(x); {ввод х}

write(‘y= ‘);

readln(y); {ввод у}

max:=y;

jf x>y then max:=x;

{если х>у max:=x, иначе значение max не меняется}

writeln(‘max=’,max:8:2); {вывод значения переменной max на экран}

readln; {пауза}

End.

Оператор выбора (оператор варианта). Условный оператор при выполнении программы позволяет выбрать одно из двух возможных действий. Если же необходимо выполнить много взаимоисключающих проверок, то удоб­нее воспользоваться оператором выбора (варианта).

Общий вид оператора:

CASE <селектор> OF

<список меток варианта>: <оператор 1>;

<список меток варианта>: <оператор 2>;

<список меток варианта>: <оператор З>;

ELSE

<оператор N>

END;

Селектор представляет собой выражение скалярного типа (но не вещественного). Выполнение оператора вари­анта начинается с вычисления значения селектора. Затем для исполнения выбирается оператор, одна из меток ко­торого совпадает с полученным значением. После выпол­нения этого оператора (он может быть простым или со­ставным) управление передается на оператор, следующий за оператором варианта. Если же значение селектора не совпало ни с одной из меток, то выполняется оператор, стоящий после служебного слова ELSE.

Вообще говоря, ветвь ELSE может и отсутствовать.

Рассмотрим пример использования оператора варианта. Заметим сразу, что оператор варианта удобно использовать для ввода и вывода значений перечисляемых скалярных типов данных. Например, в следующем фрагменте програм­мы с внешнего носителя вводится порядковый номер объек­та из списка значений перечисляемого типа COLOR (цвет). Оператор CPSE присваивает соответствующее значение пе­ременной CLR. Аналогично осуществляется вывод значе­ний CLR при помощи оператора варианта.

Program cas;

Type color = (red, blue, black);

Var x: integer;

Clr: color;

Begin

Write ('Введите порядковый номер /0-1-2/ => ');

Readln (x);

Case x of

0: clr:=red;

1: clr:=blue;

2: clr:=black;

else

writeln ('Неправильный ввод')

end;

Write ('цвет =');

Case clr of

0: writeln('red');

1: writeln('blue');

2: writeln('black');

end;

End.

Протокол работы программы:

Введите порядковый номер /0-1-2/ —> 2

цвет = black

Программирование алгоритмов циклической структуры

Понятие цикла

Циклами называются синтаксические конструкции, позволяющие повторять последовательность операторов, записанную в тексте программы лишь однажды. Данная последовательность называется телом цикла. Каждое выполнение тела цикла называется итерацией. Иначе говоря, циклом называется последовательность действий, вы­полняемых многократно, каждый раз при новых значе­ниях параметров.

В языке Паскаль возможны три разновидности циклов. Некоторые разновидности являются взаимозаменяемыми, однако для повышения удобочитаемости программы следует использовать ту разновидность, которая подходит наилучшим образом в контексте конкретного алгоритма.

На данном занятии рассмотрим оператор цикла с предусловием.

Оператор цикла с предусловием

Если перед каждой итерацией цикла в алгоритме предусмотрена проверка условия, при ложности которого итерация не имеет смысла, то такой цикл называется циклом с предусловием. Цикл с предусловием иногда называют циклом «пока».

Если в теле цикла требуется выполнить не один оператор, а целую последовательность операторов, то её следует заключить в операторные скобки Begin-End.

Такой цикл, например, уместен при описании процесса сбора урожая с яблони. То есть «пока есть яблоко – сорвать его». В компьютерных алгоритмах цикл с предусловием используют при чтении информации из файла, где чтение новой записи возможно пока файл не завершился.

Для того чтобы программа смогла выйти из цикла, необходимо, чтобы операции в теле цикла прямо или косвенно влияли на условие его продолжения.

Структура:

WHILE <условие> DO <оператор>;

WHILE, DO — зарезервированные слова (пока (выпол­няется условие) делать)

<условие> — выражение логического типа

<оператор> — произвольный оператор Турбо Паскаля

Порядок работы оператора WHILE (рис. 1):

Рис. 1 Алгоритм циклической структуры с предусловием

Пример.

Дано натуральное число n. Подсчитать количество цифр данного числа.

Решение:

Program Example;