var
a, s: real; //a - вводимое с клавиатуры число, s - сумма чисел
begin
a:= 1; //Присваиваем начальное значение, чтобы цикл выполнился
s:= 0;
while a <> 0 do
begin
writeln('Введите положительное число');
readln(a);
if a < 0 then
begin
writeln('Введено не положительное число. Повторите ввод заново');
continue; {Если а - не положительное число, вводим число заново}
end;
s:= s + a;
end;
writeln('Сумма: ', s); //Выводим сумму
end.
Задание 2.
program prog;
function F(n:integer):integer;
begin
if n<=1 then F:=1
else F:=F(n-1)+F(n-2)
end;
begin
write(F(7))
end.
Вывод программы: 21
Задание 3.
program prog;
function F(n:integer):integer;
begin
if n<=1 then F:=1
else F:=F(n-1)*F(n-2)+2
end;
begin
write(F(5))
end.
Вывод программы: 87
Задание 5.
program prog;
procedure F(n:integer);
begin
write('*');
if n > 0 then begin
F(n-2);
F(n-2);
F(n div 2);
end
end;
begin
F(5);
end.
Вывод программы (34 звёздочки):
Задание 6.
program prog;
procedure F(n: integer);
begin
write('*');
if n > 0 then begin
F(n-3);
F(n-2);
F(n div 2);
F(n div 2);
end
end;
begin
F(6);
end.
Вывод программы (97 звёздочек):
Задание 7.
program prog;
procedure F(n: integer);
begin
write('*');
if n > 0 then begin
write('*');
F(n-2);
F(n-2);
F(n div 2);
end
end;
begin
F(6);
end.
Вывод программы (77 звёздочек):