Предмет: Информатика,
автор: Adilet02082000
Требовалось написать программу, при выполнении которой с клавиатуры вводится последовательность из шести неотрицательных целых чисел, не превышающих 106, подсчитывается и выводится сумма введённых чётных чисел или 0, если чётных чисел в последовательности нет.
var n, s: longint;
i: integer;
begin
s:=1;
for i:=1 to 6 do begin
readln(n);
if i mod 2 = 0 then
s := s + n;
end;
write(s);
end.
Ответы
Автор ответа:
1
Ошибки
var n, s: longint;
i: integer;
begin
s:=1 ;
for i:=1 to 6 do begin
readln(n);
if i mod 2 = 0 then
s := s + n;
end;
write(s);
end.
- Из за того что сумма в начале равняется единице, то при конечном выводе суммы она всегда будет больше чем нужно на единицу, а при ненахождении чётных чисел вывод будет 1 , а не 0
- Проверяется чётность номера введённого числа а не само число, то есть если число было введено вторым, но при этом оно нечётное, то программа считает его как чётное
Правильный вариант программы
var n, s: longint;
i: integer;
begin
s:=0;
for i:=1 to 6 do begin
readln(n);
if n mod 2 = 0 then
s := s + n;
end;
write(s);
end.
Похожие вопросы
Предмет: Математика,
автор: KotikMonolitove4
Предмет: Геометрия,
автор: Аноним
Предмет: Биология,
автор: Starmy1
Предмет: Биология,
автор: MOTR56
Предмет: Алгебра,
автор: Hellstaf