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

Элементарная техника программирования.

Вычислительная циклическая программа.

Задача.

Во дворце N залов. Известны длина и ширина каждого зала. Вычислить площадь пола каждого зала.

Программа.

Var i,dlina,shirina,N,S:Integer;

BEGIN

WriteLn('Введите число залов');

ReadLn(N);

For i:=1 to N do begin

WriteLn('Ведите длину и ширину зала');

ReadLn(dlina,shirina);

S:= dlina*shirina;

WriteLn('Площадь пола=',S)

end

END.

Счётчики.

Счётчик – это переменна я величина, в которой что–нибудь подсчитывается.

Задача.

В компьютер вводится 200 чисел. Компьютер должен подсчитать и напечатать, сколько среди них положительных.

Решение.

Введём переменную i, которая будет выполнять роль счётчика положительных чисел. Оператор с:=с+1 в нужный момент увеличивает значение счётчика на единицу. Увеличение с на единицу выполняется лишь при выполнении условия: а>0, где а – вводимое число. Счётчик перед входом в цикл необходимо обнулять, иначе он начнёт считать не с нуля.

VAR c,i :Integer;

a :Real;

BEGIN

c:=0;

For i:=1 to 200 do begin

WriteLn('Введите число');

ReadLn(a);

If a>0 then c:=c+1

end;

WriteLn('Из них положительных – ',c)

END.

Сумматоры

Сумматор – это переменная величина, в которой подсчитывается сумма чего – либо.

Задача.

Во дворце N залов. Известны длина и ширина каждого зала. Вычислить площадь пола всего дворца.

Решение.

Введём переменную Sum, которая будет выполнять роль сумматора. Оператор Sum:=Sum+S каждый раз увеличивает значение сумматора на величину S, т.е. в ячейке Sum накапливается сумма вычисленных площадей отдельных залов. Сумматор перед входом в цикл тоже необходимо обнулять, иначе он начнёт считать не с нуля.

Var i,dlina,shirina,N,S,Sum:Integer;

BEGIN

Sum:=0;

WriteLn('Введите число залов');

ReadLn(N);

For i:=1 to N do begin

WriteLn('Ведите длину и ширину зала');

ReadLn(dlina,shirina);

S:= dlina*shirina;

Sum:=Sum+S

end;

WriteLn('Площадь пола всего дворца=',Sum);

ReadLn

END.

Поиск максимального из чисел.

Задача.

Составить программу для определения максимального из 10 вводимых чисел.

Решение.

Приготовим для самого максимального числа ячейку и назовём её max. Первое число не глядя введём в эту ячейку. Каждое следующее число (назовём его x) будем сравнивать с max. Если оно больше, то присвоим переменной max значение этого числа.

Var i,x,max :Integer;

BEGIN

WriteLn('Введите первое число ');

ReadLn(max);

For i:=2 to 10 do begin

WriteLn('Введите следующее число');

ReadLn(x);

If x>max then max:=x

end;

WriteLn('Максимальное число: ',max);

ReadLn

END.

Оператор GOTO.

GOTO m1 - оператор перехода (читается – "гоуту"; переводится – "иди к".); m1 – метка.

Метка – это произвольное имя или произвольное целое положительное число. Оператор GOTO можно писать в любых местах программы, и метку можно ставить перед любым оператором, заставляя компьютер таким образом перескакивать в программе откуда угодно и куда угодно (правда, в сложных программах эта свобода перескакивания существенно ограничивается). Метка должна отделяться от оператора двоеточием.

Метки, встречающиеся в программе, должны быть описаны выше BEGIN после слова LABEL(читается – "лэйбл"; переводится – "метка").

Используя оператор GOTO, можно составлять циклические программы.

Задача.

Написать программу, которая бесконечно печатает букву А.

Программа.

LABEL m1;

BEGIN

m1: Write('A');

ReadLn;

GOTO m1

END.

Задача.

При помощи цикла напечатать на экране: 3 5 7 9

Программа.

LABEL m1;

VAR f:Integer;

BEGIN

f:=3;

m1: Write(f,' ');

f:=f+2;

If f<=9 then GOTO m1;

ReadLn;

END.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]