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.Отпустить левой рукой хлеб.
Объяснение:
Запускаем программу и смотрим, как она работает: Ой... вместе с пятым куском и палец отрезал... чёрт! остановить программу! Я же не написал как именно нужно зафиксировать хлеб левой рукой, схватился как попало и большой палец торчал в сторону... Возвращаемся к строчке "Зафиксировать хлеб левой рукой, взявшись за левый край булки;" После нее пишем: "Поджать большой палец левой руки влево, к ладони;" Запускаем программу Ой... на строчке "Положить нож в ящик;" нож упал на пол... Проклятье! оказывается, стол стоит немного под наклоном и ящик сам закрылся... Возвращаемся к коду и перед строчкой "Положить нож в ящик;" пишем "Открыть правой рукой верхний ящик стола;" Заметили ошибку? Нет?! Как мы можем открыть ящик правой рукой, если в этой руке нож? Значит, сначала нужно положить нож на стол, потом открыть ящик, снова взять нож и т.д. И делаем мы это до тех пор, пока хлеб не будет нарезан как следует, без повреждения мебели и пальцев. Вот, примерно так происходит отладка С опытом начинаешь писать программы, которые работают с первого раза, допуская минимум ошибок, а проверка "открыт ли ящик", перед складыванием в него чего-то, входит в привычку. Когда какие-то операции совершаются постоянно, такие как нарезка хлеба, мойка посуды и т.д., то программисты их описывают в виде процедур. Процедура - набор определенных действий, спрятанный под одной командой. Таким образом, текст программы, который я приводил выше, можно поместить в процедуру под названием НарезатьХлеба(параметр), где в качестве параметра будем указывать количество кусков
begin Randomize; Writeln('Элементы массива'); k := 0; for i := 1 to n do begin T[i] := Random(11)-5; Write(T[i]:3); if ((i mod 2)<>0) and (T[i]=0) then Inc(k); end; Writeln; Writeln('Количество нулевых элементов на нечетных местах равно ',k); end.
Тестовое решение: Элементы массива 2 5 -4 4 3 -2 5 -5 -1 -2 5 2 0 -5 -5 -4 -3 3 0 1 Количество нулевых элементов на нечетных местах равно 2
const n = 18;
var T: array[1..n] of integer; i: integer;
begin Randomize; Writeln('Элементы массива'); for i := 1 to n do begin T[i] := Random(51)-25; Write(T[i]:4); end; Writeln; Writeln('Результат'); for i := 1 to n do begin if ((i mod 2)<>0) then T[i] := 0; Write(T[i]:4); end; Writeln; end.
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.Отпустить левой рукой хлеб.
Объяснение:
Запускаем программу и смотрим, как она работает: Ой... вместе с пятым куском и палец отрезал... чёрт! остановить программу! Я же не написал как именно нужно зафиксировать хлеб левой рукой, схватился как попало и большой палец торчал в сторону... Возвращаемся к строчке "Зафиксировать хлеб левой рукой, взявшись за левый край булки;" После нее пишем: "Поджать большой палец левой руки влево, к ладони;" Запускаем программу Ой... на строчке "Положить нож в ящик;" нож упал на пол... Проклятье! оказывается, стол стоит немного под наклоном и ящик сам закрылся... Возвращаемся к коду и перед строчкой "Положить нож в ящик;" пишем "Открыть правой рукой верхний ящик стола;" Заметили ошибку? Нет?! Как мы можем открыть ящик правой рукой, если в этой руке нож? Значит, сначала нужно положить нож на стол, потом открыть ящик, снова взять нож и т.д. И делаем мы это до тех пор, пока хлеб не будет нарезан как следует, без повреждения мебели и пальцев. Вот, примерно так происходит отладка С опытом начинаешь писать программы, которые работают с первого раза, допуская минимум ошибок, а проверка "открыт ли ящик", перед складыванием в него чего-то, входит в привычку. Когда какие-то операции совершаются постоянно, такие как нарезка хлеба, мойка посуды и т.д., то программисты их описывают в виде процедур. Процедура - набор определенных действий, спрятанный под одной командой. Таким образом, текст программы, который я приводил выше, можно поместить в процедуру под названием НарезатьХлеба(параметр), где в качестве параметра будем указывать количество кусков