
- •Введение
- •1. Общая схема решения задачи на персональном компьютере
- •2. Свойства алгоритмов. Основные алгоритмические структуры
- •Линейные алгоритмы
- •Развилка
- •3. Консольные приложения в Delphi. Введение в язык Object Pascal. Общая структура программы. Идентификаторы, комментарии, пробелы. Раздел описаний и раздел операторов
- •4. Арифметические типы данных. Числовые константы и переменные. Оператор присваивания. Выражения
- •5. Ввод-вывод данных в Паскале
- •6. Арифметические операции. Стандартные математические функции
- •7. Пример выполнения задания
- •8. Символьный тип данных
- •9. Логический тип данных. Операции сравнения. Логические операции. Битовые операции
- •10. Условный оператор. Блок. Оператор выбора
- •11. Операторы цикла
- •12. Метки. Оператор goto. Процедура Halt
- •13. Интервальные типы данных. Оператор type. Массивы
- •14. Защита от ошибок и отладка программ. Стандартная техника отладки
- •15. Процедуры и функции. Сфера действия описаний
- •16. Множества
- •Include ( множество , выражение );
- •18. Погрешности при вычислениях
- •19. Файлы. Работа с текстовыми файлами
- •Задания для лабораторных работ Лабораторная работа №1. Вычисление простейших арифметических выражений
- •Лабораторная работа №2. Разветвления
- •Лабораторная работа №3. Простейшие циклы
- •Лабораторная работа №4. Итерационные циклы. Вычисление суммы ряда
- •Лабораторная работа №5. Целые числа
- •Лабораторная работа №6. Вычисления с хранением последовательностей
- •Лабораторная работа №7. Двумерные массивы.
- •Лабораторная работа №8. Обработка последовательностей символов
- •Лабораторная работа №9. Использование подпрограмм
2. Свойства алгоритмов. Основные алгоритмические структуры
В предыдущем параграфе мы рассмотрели понятие алгоритма. Каждый алгоритм должен обладать следующими свойствами:
1) дискретность – процесс решения задачи должен быть разбит на последовательность отдельных шагов;
2) понятность – алгоритм должен быть понятен исполнителю и исполнитель должен быть в состоянии выполнить его команды;
3) точность – алгоритм не должен содержать команды, смысл которых может восприниматься неоднозначно;
4) результативность – процесс решения задачи должен прекратиться за конечное число шагов и при этом должен быть получен ответ задачи;
5) массовость – возможность использовать алгоритм для решения однотипных задач.
Теперь более подробно рассмотрим возможности использования блок-схем и псевдокодов при разработке алгоритмов.
Блок-схема алгоритма представляет собой диаграмму, на которой изображена последовательность действий, выполняемых программой. На этой диаграмме разными геометрическими фигурами представлены разные типы процессов. Например, ромб означает процесс принятия решения, а параллелограмм — ввод и вывод данных. Линии со стрелками представляют последовательность выполнения компьютером действий, соединенных этими линиями. В блок-схемах используется много разных геометрических фигур, наиболее часто применимые показаны на рис. 2.
|
Терминатор. Определяет начальную и конечную точки алгоритма. Терминатор соединен с другими фигурами только одной линией: из начальной точки выходит линия со стрелкой, а в конечную — входит. |
|
Ввод и вывод данных. Фрагмент программы, в котором пользователь вводит данные или алгоритм выводит результаты. |
|
Обработка данных. Отображает любую операцию, выполняемую алгоритмом, например присваивание переменной значения. |
|
Структура принятия решения. Фрагмент алгоритма, в котором принимается решение о направлении вычислительного процесса. В ромб всегда входит одна линия, а выходит две. Одна из выходящих линий отмечается словом "Да" ("Истина"); а другая — "Нет" ("Ложь"). |
|
Предопределенный процесс. Эта фигура отображает группу операций, например вычисление факториала. |
|
Линия. Соединяет две фигуры блок-схемы и показывает последовательность выполняемых алгоритмом операций. |
Рис. 2. Геометрические фигуры, используемые в блок-схемах.
На примере блок-схем мы рассмотрим основные алгоритмические структуры. Ими являются следование, развилка и цикл (рис.3):
Структура “следование” |
Полная развилка |
Неполная развилка |
Цикл с предусловие (цикл ПОКА) |
Цикл с постусловием (цикл ДО) |
Цикл с параметром |
Рис.3. Основные алгоритмические структуры.
Для иллюстрации основных алгоритмических структур рассмотрим следующие примеры: