Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Ошибки в программе Паскаль

kirtsova!/// Знаток (387), на голосовании 1 год назад
Помогите найти и исправить, что не правильно в этой программе! Программа пишет, что еще где-то со знаком ";" проблема есть(
program massiv;
var a: array [1..10] of integer; i: integer;
begin
for i:= 1 to 10 do
read a[i]
var y:= 0; z:= 0;
for i:= 1 to 10 do
repeat
y:= y + a[i];
until
a[i] mod 2:= 0;
repeat
z:= z + a[i];
writeln ('y:=', y);
writeln ('z:=', y);
end.
Заранее огромное спасибо!
Голосование за лучший ответ
Here's Johnny! Ученик (151) 1 год назад
Кто не скачет, тот паскаль!
Gennady Гений (60223) 1 год назад
> Помогите найти и исправить, что не правильно в этой программе!
Ошибки находит компилятор и, что удивительно (!), даже говорит человеческим языком какие и даже приблизительно показывает место ошибки.

> Программа пишет, что еще где-то со знаком ";" проблема есть(
Именно об этом я и говорил, что показывает место.

Возможно сейчас стало нормальным описывать переменный в теле программы, а не там, где это положено по стандарту, в секции var, но уж завершить оператор read a[i] точкой с запятой точно надо.

until a[i] mod 2:= 0;
repeat
Что здесь делает оператор присваивания и что за repeat без последующего until ?

И да, почему не описана переменная i для управления циклами?

Думайте и исправляйте!
Похожие вопросы