Очень создать несколько программ на питоне с циклом while True 1) Требуется найти минимальное число среди введённых с клавиатуры натуральных чисел. Завершение ввода – 0. Отрицательные числа не вводятся
2) Требуется найти сумму введённых с клавиатуры четных чисел. Завершение ввода – 0. Отрицательные числа не вводятся.
3) Требуется подсчитать количество введённых с клавиатуры чисел заканчивающихся цифрой 7. Завершение ввода – 0.
var
sur, sur1: string;
i, count, pz: byte;
begin
write ('Введите строку: ');
readln (sur);
for i:=1 to length (sur) do
if sur[i] = 'a' then inc (count);
writeln ('Длина строки : ', length(sur), ' символов; кол-во "а": ', count);
sur1:=sur;
for i:=2 to length (sur) do
if (sur[i] = 'b') and (sur[i-1] = 'o') then
begin;
delete (sur1, i-pz, 1);
inc (pz);
end;
write ('Удалено ', pz, ' "b"; Новая строка: ', sur1);
end.
//Вариант по формуле Бине
Var
n,fibn:real;
i:integer;
begin
readln(n);
if n<=0 then writeln('Не существует чисел Фиббоначи меньше 0')
else
begin
i:=0;
while fibn<n do
begin
fibn:=(power((1+sqrt(5))/2,i)-power((1-sqrt(5))/2,i))/sqrt(5);
inc(i);
end;
writeln((power((1+sqrt(5))/2,i)-power((1-sqrt(5))/2,i))/sqrt(5)-1);
end;
end.
//В лоб
Var
sum,n,buf,fib0,fib1:integer;
function fibb(fib0,fib1:integer):integer;
begin
result:=fib0+fib1;
end;
begin
fib0:=0;
fib1:=1;
readln(n);
if n<=0 then
writeln('Не существует чисел Фиббоначи меньше 0')
else
begin
if fibb(fib0,fib1)>=n then sum:=0 else
begin
while fibb(fib0,fib1)<n do
begin
buf:=fib1;
fib1:=fibb(fib0,fib1);
fib0:=buf;
end;
sum:=fibb(fib1,fibb(fib0,fib1))-1;
end;
writeln(sum);
end;
end.
Пример ввода:
12
Пример вывода:
20