Просмотр содержимого документа
«Практическая работа по циклам на Pascal»
Практическая работа. Тема: «Различные варианты программирования циклических алгоритмов».
Пример 1. Сто раз написать свое имя на экране в строчку
Программа:
Program Z_1;
Var i: integer;
Begin
For i: = 1 to 100 do
Write (‘Имя ’);
Readln
End.
Пример 2. Написать квадраты чисел, находящихся в диапазоне от 0 до 1 с шагом 0,2.
Программа:
Program Z_2;
var k, s : integer;
begin
s := 0;
while s
begin
k := sqr(s);
writeln (k);
s := s + 0.2;
end;
readln;
end.
Пример 3. Что будет выведено на экране монитора после выполнения следующего фрагмента программы:
b:=0;
while a0 do
begin
a:=a div 10;
h:=b*10+a mod 10;
end;
write(h);
если а=13305?
Пример 4. Задача «Банк». Посчитать итоговую сумму денег на банковском вкладе за N лет при P процентах годовых.
Program bank1; CONST P=15; N=5; VAR S:real; i: integer; BEGIN Writeln (‘Summa vklada: ’); Readln (S); For i:=1 to N do S:=S+S*P/100; Writeln (‘itogovaja summa’, S); END. | Program bank2; CONST P=15; N=5; VAR S:real; i: integer; BEGIN Writeln (‘Summa vklada: ’); Readln (S); i:=1; While ibegin S:=S+S*P/100; i:=i+1; end; Writeln (‘itogovaja summa’, S); END. | Program bank3; CONST P=15; N=5; VAR S:real; i: integer; BEGIN Writeln (‘Summa vklada: ’); Readln (S); i:=1; Repeat S:=S+S*P/100; i:=i+1; Until iN; Writeln (‘itogovaja summa’, S); END. |
| | |
Эту задачу можно решить с помощью трех типов циклов. Но используя цикл с предусловием или с постусловием, переменная, определяющая условие, работает как счетчик (наращивается на 1). Поэтому решение этой задачи с помощью цикла со счетчиком является наиболее коротким.
Пример 5. Найти сумму квадратов всех натуральных чисел от 1 до 100. Решим эту задачу с использованием всех трех видов циклов.
I. С использованием цикла "Пока".
Program Ex1;
Var
A : Integer;
S : Longint;
Begin
A:=1; S:=0;
While ABegin
S:=S+A*A;
A:=A+1
End;
Writeln(S)
End.
II. С использованием цикла "До".
Program Ex2;
Var
A : Integer;
S : Longint;
Begin
A:=1; S:=0;
Repeat
S:=S+A*A;
A:=A+1
Until A100;
Writeln(S)
End.
III. С использованием цикла "С параметром".
Program Ex3;
Var
A : Integer;
S : Longint;
Begin
S:=0;
For A:=1 To 100 Do S:=S+A*A;
Writeln(S)
End.