Регистрация
Войти
Стать экспертом Правила
Информатика

Что не правильно в этой программе? надо найти среднее арифметическое нечетных чисел. В этой строке (i: = i+1;) пишет Нельзя изменять значение переменной цикла внутри этого цикла
Program P1;
Var K: array [1..40] of integer;
i,S: integer;
sr: real;
begin
For i: = 1 to 40 do K[i]: = random(21)+0;
writeln;
For i: = 1 to 40 do write(K[i], ' ');
S: = 0;
i: = 0;
writeln;
For i: = 1 to 40 do if K[i] mod 2 = 1 then begin
S: = S+K[i];
i: = i+1;
sr: = S/i;
end;
Write(sr);
end.

ОТВЕТЫ
Правильно пишет. В цикле for счётчик индексируется автоматически. Вручную его менять нельзя. В твоем цикле i является счетчиком цикла и одновременно еще и счетчиком нечетных элементов. Это недопустимо. Замени i на j например или другую букву для подсчета количества нечетных элементов.
63
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам