Задать вопрос
14 октября, 03:55

Что не правильно в этой программе? надо найти среднее арифметическое нечетных чисел. В этой строке (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.

+5
Ответы (1)
  1. 14 октября, 04:22
    0
    Правильно пишет. В цикле for счётчик индексируется автоматически. Вручную его менять нельзя. В твоем цикле i является счетчиком цикла и одновременно еще и счетчиком нечетных элементов. Это недопустимо. Замени i на j например или другую букву для подсчета количества нечетных элементов.
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «Что не правильно в этой программе? надо найти среднее арифметическое нечетных чисел. В этой строке (i:=i+1;) пишет Нельзя изменять значение ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы