pascal Вложенные блоки условия if, уход от дублирования кода. Разбор примера
Primary tabs
Задача
Есть программа:
var z,s:integer; f:boolean; begin s:=1; if (z=s) and (f=false) then begin writeln();// делаем перенос строки z:=0; s:=s+1;//но увеличиваем кол-во строк end; if (z=s) and (f=true) then begin writeln(); // делаем перенос строки z:=0; s:=s-1;//но уменьшаем кол-во строк end; end.
-- в двух условных операторах действия частично совпадают, а значит наблюдается дублирование кода. Перепишите код так, чтобы дублирования не было.
(из урока на условный оператор)
Разбор решения
Начать переписывать можно так:
if (z=s) then begin writeln(); z:=0; if (f=true) // ......
-- если этой подсказки не достаточно или просто для лучшего понимания, смотрите этот видео-разбор
- Log in to post comments
- 1817 reads