Задача 9 Урок 13.1
Primary tabs
Есть исходный код:
var i,m:integer; begin i:=1; m:=1; repeat repeat write('# '); m:=m+1; until(m=13); i:=i+1; writeln(); until(i=9); readln(); end.в нем сделана попытка вывести квадрат символов # размерами 13 на 9.
Но цикл оказывается бесконечным, разберитесь почему (напишите текстовое описание причины) и исправьте ошибку в коде, ответьте на вопросы:На каком витке внешнего и внутреннего цикла (укажите номера витков) программа впервые начинает выводить не то, что ожидалось
Какой из двух циклов - внешний или внутренний оказывается бесконечным и почему (состояние переменных)
program task9;
var
i,m:integer;
begin
i:=1;
m:=1;
repeat
repeat
write('# ');
m:=m+1;
until(m>13); //изменил знак
i:=i+1;
m:=1; //добавил приведение m к 1
writeln();
until(i>9); //изменил знак сравнения
readln();
end.
//1.На 14 витке внутреннего цикла
//2.Внутренний цикл бесконечен т.к. после первой остановки m уже никогда не будет равна 13
- Log in to post comments
- 663 reads