блок-схема представляет собой графическое изображение работы программы. каждый возможный вариант развития событий в игре, каждая функция, отображается квадратом с соответствующей записью. переходы между действиями изображаются при стрелок. для начала, взгляните на блок «старт» и спускайтесь по стрелке ниже в следующий блок и так, пока не дойдете до блока «конец».
на рис.8.2-1 вы видите полную блок-схему для игры «виселица». вы можете двигаться от одного блока к другому только по стрелочкам. переход возможен только по ним, кроме тех случаев. когда из блока выходит несколько стрелок. это блоки условия. в зависимости от выбора игрока, ситуация будет развиваться по одному из нескольких вариантов:
85
рис 8.2-1 блок-схема программы «виселица».
конечно, вы можете начать писать программу и без разработки её блок-схемы. однако, в процессе написания кода у вас будут появляться новые идеи, почти наверняка вы забудете написать какую-нибудь функцию. и в результате придется редактировать, дописывать а то и просто удалять значительную часть кода. особенно обидно, когда программа практически готова и приходится переделывать значительную её часть. чтобы избежать этого, всегда продумывайте свою программу до того, как начнете её писать.
//Визуально разделил циклы, чтобы было более читаемо
var ar:array[1..10] of integer; max,i:integer; begin; randomize; //чтобы random() работал как надо writeln('Array');
for i:=1 to 10 do begin; ar[i]:=random(-10,10); //случайное число от -10 до 10 write(ar[i]:4); end;
for i:=1 to 10 do //"проходим" через весь массив if (ar[i]<0) and (max<abs(ar[i])) then max:=abs(ar[i]); {если элемент массива меньше нуля и его модуль больше максимума тогда записать модуль этого числа в максимум}
writeln; writeln('Max:-',max); //выводим на всякий случай максимум
writeln('Final array:'); for i:=1 to 10 do //снова проходим по всему массиву begin; if ar[i]=-max then ar[i]:=0; {если элемент равен отрицательному максимуму(мы брали модуль) присвоить ему 0} write(ar[i]:4); end; end.
ответ:
блок- схема программы «виселица»
блок-схема представляет собой графическое изображение работы программы. каждый возможный вариант развития событий в игре, каждая функция, отображается квадратом с соответствующей записью. переходы между действиями изображаются при стрелок. для начала, взгляните на блок «старт» и спускайтесь по стрелке ниже в следующий блок и так, пока не дойдете до блока «конец».
на рис.8.2-1 вы видите полную блок-схему для игры «виселица». вы можете двигаться от одного блока к другому только по стрелочкам. переход возможен только по ним, кроме тех случаев. когда из блока выходит несколько стрелок. это блоки условия. в зависимости от выбора игрока, ситуация будет развиваться по одному из нескольких вариантов:
85
рис 8.2-1 блок-схема программы «виселица».
конечно, вы можете начать писать программу и без разработки её блок-схемы. однако, в процессе написания кода у вас будут появляться новые идеи, почти наверняка вы забудете написать какую-нибудь функцию. и в результате придется редактировать, дописывать а то и просто удалять значительную часть кода. особенно обидно, когда программа практически готова и приходится переделывать значительную её часть. чтобы избежать этого, всегда продумывайте свою программу до того, как начнете её писать.
var ar:array[1..10] of integer;
max,i:integer;
begin;
randomize; //чтобы random() работал как надо
writeln('Array');
for i:=1 to 10 do
begin;
ar[i]:=random(-10,10); //случайное число от -10 до 10
write(ar[i]:4);
end;
for i:=1 to 10 do //"проходим" через весь массив
if (ar[i]<0) and (max<abs(ar[i])) then max:=abs(ar[i]);
{если элемент массива меньше нуля и его модуль больше максимума тогда записать модуль этого числа в максимум}
writeln;
writeln('Max:-',max); //выводим на всякий случай максимум
writeln('Final array:');
for i:=1 to 10 do //снова проходим по всему массиву
begin;
if ar[i]=-max then ar[i]:=0;
{если элемент равен отрицательному максимуму(мы брали модуль) присвоить ему 0}
write(ar[i]:4);
end;
end.