1.Открыть правой рукой хлебницу; __2.Взять булку хлеба правой рукой; __3.Положить хлеб на разделочную доску; (предположим, что доска уже лежала на столе) __4.Открыть правой рукой верхний ящик стола; __5.Найти блестящий нож, длиной 20 см, с черной ручкой; __6.Взять нож в правую руку; __7.Поднести нож к хлебу; __8.Зафиксировать хлеб левой рукой, взявшись за левый край булки; __9.Расположить нож строго над правым ребром булки хлеба; __10.Повторять следующие действия 5 раз: ____10.1.Отступить влево на сантиметр; ____10.2.Повторять следующие действия, пока лезвие ножа не не коснется доски: ________10.2.1.Прижать нож к хлебу; ________10.2.2.Совершить ножом возвратно поступательное движение вперед-назад; ____10.3.Поднять нож вверх; __11.Положить нож в ящик; __12.Отпустить левой рукой хлеб.
Объяснение:
Запускаем программу и смотрим, как она работает: Ой... вместе с пятым куском и палец отрезал... чёрт! остановить программу! Я же не написал как именно нужно зафиксировать хлеб левой рукой, схватился как попало и большой палец торчал в сторону... Возвращаемся к строчке "Зафиксировать хлеб левой рукой, взявшись за левый край булки;" После нее пишем: "Поджать большой палец левой руки влево, к ладони;" Запускаем программу Ой... на строчке "Положить нож в ящик;" нож упал на пол... Проклятье! оказывается, стол стоит немного под наклоном и ящик сам закрылся... Возвращаемся к коду и перед строчкой "Положить нож в ящик;" пишем "Открыть правой рукой верхний ящик стола;" Заметили ошибку? Нет?! Как мы можем открыть ящик правой рукой, если в этой руке нож? Значит, сначала нужно положить нож на стол, потом открыть ящик, снова взять нож и т.д. И делаем мы это до тех пор, пока хлеб не будет нарезан как следует, без повреждения мебели и пальцев. Вот, примерно так происходит отладка С опытом начинаешь писать программы, которые работают с первого раза, допуская минимум ошибок, а проверка "открыт ли ящик", перед складыванием в него чего-то, входит в привычку. Когда какие-то операции совершаются постоянно, такие как нарезка хлеба, мойка посуды и т.д., то программисты их описывают в виде процедур. Процедура - набор определенных действий, спрятанный под одной командой. Таким образом, текст программы, который я приводил выше, можно поместить в процедуру под названием НарезатьХлеба(параметр), где в качестве параметра будем указывать количество кусков
Поделитесь своими знаниями, ответьте на вопрос:
Нужно написать блок схему для следуйщей программы: program example1; const n=6; m=4; var a: array[1..n, 1..m] of integer; i, j, k: byte; begin for i: =1 to n do begin for j: =1 to m do begin a[i, j]: =random(31)-15; write(a[i, j]: 4); end; writeln; end; write('строки в которых один нулевой элемент: '); for i: =1 to n do begin k: =0; for j: =1 to m do if a[i, j]=0 then inc(k); if k=1 then write(i: 2); end; readln; end.