помогите найти ошибку!!!
1. "Дано число, определить количество четных цифр."
Program task3;
var a, ost, k: integer;
begin
write ('Ввести число a ->'); read (a);
k:=0;
while a<>0 do begin
ost:= a mod 10;
if ost div 2 = 0 then k:=k+1;
end;
writeln (k);
end.
2. "Ученики 4 класса вели дневники наблюдения за погодой и ежедневно записывали в дневник температуру. Найти среднюю температуру для дней с температурой выше 0 градусов. Определите количество дней. Программа получает на выход количество дней, в течении которых проводится наблюдение."
Program task4;
var a, s, t, y, k: integer; n: real;
begin
write ('Введи количество дней ->');
read (a);
k:=1;
s:=0;
t:=y;
repeat
write ('Введи температуру в ',k,'-ый день');
read (y);
if a>31 then write ('Количество дней в месяце меньше 31');
if t>0 then k:=k+1;
if t>0 then s:=s+t;
if t=y then write ('k=',k); write ('s=',s);
until t=y;
if t=y then n:=s/k;
writeln ('n=',n);
end.
Copyright © 2024 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
1) Program task3;
var a, ost, k: integer;
begin
write (Ввести число a ->'); read (a);
k:=0;
while a<>0 do begin
ost:= a mod 10;
if ost mod 2 = 0 then k:=k+1;
a := a div 10
end;
writeln (k);
end.
2) Эту не знала как исправить, поэтому в основном просто переписала :)
Program task4;
var a, s, t, i, k: integer; n: real;
begin
write ('Введи кол-во дней -> ');
readln (a);
k:=0;
s:=0;
For i := 1 to a do
begin
write ('введи температуру в ',i,-ый день');
readln(t);
if t>0 then
begin
k:=k+1;
s:=s+t;
end;
end;
writeln('Кол-во дней, в течение которых проводилось наблюдение ', a);
writeln('Кол-во дней с t>0 = ', k);
n:=s/k;
writeln (Средняя температура в дни с t>0 ',n)
end.