
- •Технология программирования
- •Технология программирования
- •Оглавление
- •§1. Классификация и эволюция программного обеспечения
- •§2. Модульное и объектно-ориентированное программирование
- •Основные понятия ооп
- •Составные части объектного подхода
- •Инкапсуляция. Свойства
- •Наследование. Методы
- •Полиморфизм
- •§3. Визуальная среда программирования Структура проекта Delphi
- •Библиотека компонентов Delphi
- •Класс tButton (кнопки)
- •Класс tShape (фигуры)
- •§4. Основные типы данных в языке Паскаль
- •Класс tLabel (надписи)
- •Класс tEdit
- •Класс tMemo
- •Класс tMainMenu
- •Стандартные диалоги
- •Классы tOpenDialog и tSaveDialog
- •Класс tFontDialog
- •Инструкция case
- •§6. Программирование циклических алгоритмов
- •Цикл с параметром. Инструкция for
- •Цикл с предусловием. Инструкция while
- •Цикл с постусловием. Инструкция repeat … until
- •§7. Простейшие вычислительные методы
- •Метод прямоугольников
- •Метод Монте-Карло
- •Метод деления пополам
- •§8. Процедуры и функции
- •§9. Одномерные массивы
- •Класс tListBox
- •Класс tComboBox
- •§10. Двумерные и многомерные массивы
- •Класс tStringGrid
- •Алгоритмы поиска наименьшего и наибольшего элемента
- •§11. Алгоритмы поиска и сортировки. Понятие вычислительной сложности алгоритма
- •Алгоритм простого перебора
- •Алгоритм бинарного поиска
- •Алгоритм сортировки методом «пузырька»
- •Алгоритм сортировки включением
- •Понятие вычислительной сложности алгоритма
- •§12. Обработка исключительных ситуаций
- •§13. Программирование процессов реального времени
- •Класс tTimer
- •§14. Графическая подсистема Delphi Класс tImage
- •Класс tCanvas
- •§15. Динамическое создание компонентов. Конструкторы и деструкторы
- •§16. Тестирование и отладка программ
- •Методы тестирования программ
- •Средства отладки программ в Delphi
- •Трассировка программы
- •Точки останова программы
- •Наблюдение значений переменных
- •§17. Жизненный цикл программного обеспечения
- •Последовательный (каскадный) тип
- •Эволюционный (спиральный) тип
- •Библиографический список
- •Технология программирования
- •Редактор с.В.Пилюгина
- •620034, Екатеринбург, ул. Колмогорова, 66, УрГупс Редакционно-издательский отдел
Цикл с предусловием. Инструкция while
Инструкция while используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причем необходимое число повторений во время разработки программы неизвестно и может быть определено только во время работы цикла.
В общем виде инструкция while записывается следующим образом:
while условие do begin
{инструкции, которые надо выполнить несколько раз – тело цикла}
end;
где условие - выражение логического типа, определяющее условие выполнения инструкций цикла.
Инструкция while выполняется следующим образом:
1. Сначала вычисляется значение выражения условие.
2. Если значение выражения условие равно False (условие не выполняется), то на этом выполнение инструкции while завершается.
3. Если значение выражения условие равно True (условие выполняется), то выполняются расположенные между begin и end инструкции тела цикла. После этого снова проверяется выполнение условия. Если условие выполняется, то инструкции цикла выполняются еще раз. И так до тех пор, пока условие не станет ложным (False).
Для того чтобы тело цикла было выполнено хотя бы один раз, необходимо, чтобы перед выполнением инструкции while значение выражения условие было истинно.
Пример: фрагмент программы, который вычисляет количество первых элементов ряда: 1 + 1/2+ 1/3 + ..., необходимых для накопления суммы, большей 5.
sum:=0; {первоначальное значение суммы}
n:=0; {первоначальное количество элементов}
while sum < 5 do begin
n:=n+1; {добавление очередного элемента}
sum:=sum+1/n; {постепенное накопление суммы}
end
Цикл с постусловием. Инструкция repeat … until
Инструкция repeat … until используется в тех же случаях, что и while. Различие заключается в том, что проверка условия происходит не до, а после выполнения действия.
В общем виде инструкция записывается следующим образом:
repeat
{инструкции, которые надо выполнить несколько раз – тело цикла}
until условие
где условие - выражение логического типа, определяющее условие прекращения выполнения инструкций цикла.
Инструкция repeat … until выполняется следующим образом:
1. Сначала выполняются расположенные между repeat и until инструкции тела цикла.
2. Затем вычисляется значение выражения условие.
3. Если значение выражения условие равно False (условие не выполняется), то снова выполняется тело цикла. И так до тех пор, пока условие не станет истинным (True).
4. Если значение выражения условие равно True (условие выполняется), то на этом выполнение инструкции repeat … until завершается.
Отметим, что тело цикла всегда будет выполнено хотя бы один раз.
Пример (та же задача): фрагмент программы, который вычисляет количество первых элементов ряда: 1 + 1/2+ 1/3 + ..., необходимых для накопления суммы, большей 5.
sum:=0; {первоначальное значение суммы}
n:=0; {первоначальное количество элементов}
repeat
n:=n+1; {добавление очередного элемента}
sum:=sum+1/n; {постепенное накопление суммы}
until sum > 5;
§7. Простейшие вычислительные методы
Один из часто встречающихся классов задач в математике – вычисление площадей различных фигур. Для простых фигур (прямоугольник, треугольник, круг) есть простые формулы. Для более сложных используется определенный интеграл. Однако этими методами охватываются далеко не все случаи, встречающиеся на практике. Более широкий класс задач решается с помощью приближенных методов. Рассмотрим некоторые из них.