Задание 1. Перерисовываем блок-схему и рядом записываем программу на школьном алгоритмическом языке. Сделайте вывод, что делает данная программа?
Задание 2. Перерисовываем кусок блок-схемы, к нему пишем кусок программы соответствующий ей. Сделайте вывод, что делает написанная вами программа данная программа?
Задание 3. По программе на школьном алгоритмическом языке, постройте блок схему. Сделайте вывод, что делает написанная вами программа данная программа?
алг площадь
нач
цел а,h, вещ пл
вывод «Введите сторону а»
ввод а
вывод «Введите высоту h»
ввод h
пл:= а*h/2
вывод "Площадь =", пл
кон
Var
n,m,max,min:integer;
Begin
write('Введите число: ');
readln(n);
min:=9;
max:=0;
while n>0 do
begin
m:=n mod 10;
if m<min then min:=m;
if m>max then max:=m;
n:=n div 10; end;
writeln('Максимальное число: ',max);
writeln('Минимальное число: ',min);
End.
2)
var
i,count: integer;
n,s:string;
begin
writeln('Введите число: ');
readln(s);
writeln('Введите цифру: ');
readln(n);
for i:=1 to length(s) do
if(s[i]=n)then
count:=count+1;
writeln('Количество раз, когда встречается цифра = ',count);
end.
В n будем хранить количество чисел, которые ещё нужно вывести. a и b - предыдущее и текущее числа Фибоначчи. По определению, следующее число Фибоначчи равно сумме двух предыдущих, так что новое значение b будет a + b. Чтобы не заводить новую временную переменную, новое значение a можно будет найти, вычитая из нового b старое a, получится (a + b) - a = b.
Код процедуры:
procedure print_fib(n: integer);
var a, b, t: integer;
begin
a := 0;
b := 1;
while n > 0 do
begin
write(b, ' ');
b := a + b;
a := b - a;
n := n - 1;
end;
end;
Пример основной программы:
begin
print_fib(10)
end.
Вывод:
1 1 2 3 5 8 13 21 34 55