Допустим что тело цикла должно содержать два оператора. Какие из приведенных опер
Допустим что тело цикла должно содержать два оператора. Какие из приведенных операторов правильные, какие нет и почему?
a) for i:=12 to 15 do s:=s+i;
б) for a:=30 to 20 do
if a mod 3=0 then d:=d+1;
c) for x:=1 to 20 do s:=s+x;
if (xmod 2=0) or (x mod 3=0)
then d:=d+1;
Ответ(ы) на вопрос:
Гость
Они все "неправильные", потому что в каждом из вариантов тело цикла содержит один оператор. В случаях а) и с) это оператор присваивания, в случае б) - условный оператор. Если бы тело цикла содержало более одного оператора, то по правилам языка Паскаль, эти операторы заключались бы в операторные скобки begin... end.
Подозреваю, что правильный ответ должен быть б), но дело в том, что оператор присваивания d:=d+1 принадлежит не телу цикла, а условному оператору, находящемуся в теле цикла, а для цикла оператор один - условный.
Не нашли ответ?
Похожие вопросы