называют алгоритмом. Вам следует привыкнуть к этому слову, ведь алгоритм – основное понятие в программировании. Вот слегка упрощенное определение алгоритма, запишите: «Алгоритм – это точное предписание исполнителю совершить определенную последовательность действий для достижения поставленной цели за конечное число шагов». Под исполнителем мы понимаем компьютер.
В этом определении угадывается что-то знакомое, не так ли? Ещё бы! То и дело мы получаем указания: сделай то, да сделай это. За что ни возьмись, надо выполнять некий алгоритм. Так, например, одеваясь на улицу, вы соображаете, что и за чем следует напялить на себя: сначала белье, затем рубашку, брюки, носки и ботинки. Даже при ходьбе выполняем простейший алгоритм: левой, правой, левой, правой…
Разбивая сложное действие на ряд простых шагов, вы создаете алгоритм. Алгоритм нашей программы состоит из шагов, выполняемых друг за другом, последовательно. Линейная последовательность – это одна из трех базовых управляющих структур, на которых строится вся гигантски сложная архитектура современных программ (о двух других базовых управляющих структурах я расскажу позднее).
Как видите, с алгоритмами связан любой из нас, а не только программисты. Создание напичканных компьютерами сложных систем – заводов, электростанций и тому подобного – требует согласованных усилий специалистов разных профессий. Они объясняют программистам требования к создаваемым системам. Иными словами, эти специалисты заказывают алгоритмы. Увы, не все они владеют программированием. Как быть?
Кто-то догадался изображать алгоритмы графическими схемами, картинками. Этот прием оказался наглядным и понятным даже людям, далеким от программирования. Блок-схемы – так называют эти картинки – стали средством общения между специалистами разных профессий с одной стороны, и программистами с другой.
Впрочем, программисты и между собой общаются посредством блок-схем. Эти схемы помогают обнаружить ошибки в программах. В чем отличие блок- схемы программы от её текста? Текст показывает то, что фактически делает программа, а блок-схема – то, что она должна делать. Сравнивая одно с другим, можно найти ошибки в программном воплощении алгоритма.
Перед вами блок-схемы трех созданных нами программ (рис. 21).
Скругленные прямоугольники означают начало и конец алгоритма, – они соответствуют ключевым словам BEGIN и END. Исполняемые операторы – это прямоугольники с пояснениями внутри, а стрелки показывают порядок выполнения операторов. Все просто! Скоро мы изучим другие базовые управляющие структуры, и вы увидите их блок-схемы.
• Наименьшая смысловая часть программы называется оператором. Процедура печати Writeln и процедура ввода Readln – это операторы.
• Программа – это последовательность ключевых слов и операторов.
• Для разделения операторов используют точку с запятой.
• Точное предписание порядка выполняемых действий называется алгоритмом.
• Линейная последовательность – это один из трех базовых алгоритмов.
• Алгоритм может быть представлен словесным описанием, рисунком (блок-схемой), или текстом программы.
А) В нашей программе остался маленький изъян. Со временем вы забудете о том, что для завершения программы надо нажать клавишу Enter. Пусть программа сама напомнит об этом, печатая после приветствия напоминание:
Для завершения программы нажмите Enter
Внесите это изменение в программу. Или слабо?
Б) Измените программу так, чтобы в каждой строке разместилось по два оператора. Откомпилируйте и проверьте программу в действии. Изменилось ли что-то в её поведении?
В) Нарисуйте две блок-схемы, поясняющие, как вы обычно проводите свой будний и выходной день.
Глава 8
Постоянные и переменные