Операторы присваивания служат для вычисления значений выражений и приписывания вычисленных значений переменным.
Общий вид оператора присваивания:
где x – имя переменной,
s – выражение (переменная, константа) того же типа,
:= - знак присваивания.
Оператор присваивания дает команду компьютеру на:
1. вычисление значения выражения справа от знака присваивания,
2. запись вычисленного значения в ячейку памяти, отведенную для хранения переменной, стоящей слева от знака присваивания; при этом прежнее значение переменной, записанной в этой ячейке, стирается:
a:= 3 Mod 2;
a := a + 1;
После выполнения этих операторов переменная a примет значение 2.
Пример: с помощью последовательности операторов присваивания обменять значениями две переменные a и b:
Неправильное решение:
a := b;
b := a;
В этом случае обмена не произойдет, и обе переменные примут одно и то же значение, в данном случае – значение переменной b.
Для обмена значениями двух переменных обязательно нужна третья. Такой обмен осуществляется с помощью алгоритма циклического обмена:
c := a;
a := b;
b := c;
Неправильная запись операторов присваивания:
10 := x; слева должно стоять имя
a + b := y; переменной, а справа - выражение
i := j := k := 1; нельзя присваивать однимоператором одновременно значениесразу нескольким переменным
Пример: чему будет равно значение переменной s после выполнения следующих операторов присваивания:
s := s + x Mod 10; s =0 + 4
s := s + x Div 10 Mod 10; s = 4 + 3
s := s + x Div 10 Div 10 Mod 10; s = 7 + 5
Эта программа вычисляет сумму цифр переменной x, то есть s = 12.
Команды, выполняемые процессором компьютера, являются электрическими сигналами, которые можно представить в виде последовательностей нулей и единиц. Каждой команде соответствует своя последовательность – двоичное число или машинный код. Написать программу на нем может только очень опытный программист, хорошо знающий архитектуру процессора (его устройство) и систему команд (набор допустимых инструкций). Поэтому большинство программ создаются при помощи посредников, в качестве которых выступают алгоритмические языки или языки программирования.
Совокупность средств и правил представления алгоритма в виде, пригодном для выполнения компьютером, называется языком программирования.
Программа – это запись алгоритма на языке программирования.
В процессе создания любой программы можно выделить несколько этапов.
1.Постановка задачи – выполняется специалистом в предметной области на естественном языке (русском, английском, языком рисунков или жестов…). При этом определяются цели задачи, ее содержание и общий подход к решению. Возможно, что задача решается точно (аналитически), и без компьютера можно обойтись. Уже на этапе постановки задачи надо учитывать эффективность выбранного алгоритма решения, ограничения, накладываемые аппаратным и программным обеспечением компьютера.
2. Анализ задачи и моделирование – определяются исходные данные и результат решения задачи, выявляются ограничения на их значения, выполняется формализованное описание задачи и построение математической модели, пригодной для решения на компьютере.
3. Разработка или выбор алгоритма решения задачи – выполняется на основе ее математического описания. Многие задачи можно решить различными способами. Программист должен выбрать оптимальное решение. Неточности в постановке, анализе задачи или разработке алгоритма могут привести к скрытойошибке – программист получает неверный результат, считая его правильным.
4. Проектирование общей структуры программы – формируется модель решения с последующей детализацией и разбивкой на подпрограммы, определяется архитектура программы, способ хранения информации, структуры данных, наиболее подходящие для реализации выбранного алгоритма.
5. Кодирование – запись алгоритма на языке программирования. Современные системы программирования (Delphi) позволяют ускорить процесс разработки программы, автоматически создавая часть ее текста, однако вся творческая работа по-прежнему лежит на программисте. Для успешной реализации целей проекта программисту необходимо использовать современные технологии и методы программирования: структурное, модульное и объектно-ориентированное программирование.
6. Отладка и тестирование программы. Под отладкой понимается устранение ошибок в программе, не выявленных в процессе компиляции. Тестирование позволяет вести их поиск и, в конечном счете, убедиться в том, что полностью отлаженная программа дает правильный результат. Для этого разрабатывается система тестов – специально подобранных контрольных примеров с такими наборами параметров, для которых решение задачи известно. Тестирование должно охватывать все возможные ветвления в программе, то есть проверять все ее инструкции, и включать такие исходные данные, для которых решение невозможно. Проверка особых, исключительных ситуаций, необходима для анализа корректности. В ответственных проектах большое внимание уделяется так называемой защите от дурака (fool-tolerance), подразумевающей устойчивость программы к неумелому обращению пользователем. Использование специальных программ-отладчиков, которые позволяют выполнять программу по отдельным шагам, просматривая при этом промежуточные результаты, значительно упрощает этот этап.
7. Анализ результатов – если программа выполняет моделирование какого-либо известного процесса, следует сопоставить результаты вычислений с результатами наблюдений. В случае существенного расхождения необходимо изменить модель.
8. Сопровождение программы – включает консультацию по работе с программой и обучение персонала. Устраняются недостатки и ошибки, замеченные в процессе эксплуатации.
Таким образом, программа реализует алгоритм решения задачи. Основными характеристиками программы являются следующие:
· точность полученного результата,
· время выполнения,
· объем требуемой памяти.
Функционирование программы связано с обработкой данных. Данные, предназначенные для обработки, называются исходными и задаются обычно в начале выполнения программы. Программа по ходу выполнения может запрашивать недостающие исходные данные. Основной способ их задания – ввод с клавиатуры. Программа может также считывать исходные данные из файлов.
В процессе выполнения программы исходные данные преобразуются в результаты. Результаты выводятся на экран или принтер в текстовом или графическом виде, а также могут быть записаны в файл на диске.
Таким образом, в программе выполняются следующие действия:
1. ввод данных,
2. определение представления этих данных в памяти компьютера (создание структур данных),
3. определение операций по обработке структур данных в соответствии с заданным алгоритмом – создание базовых структур,
4. вывод результатов работы.
Типовой алгоритм вычислительного процесса, реализованного в программе, имеет вид:
Программа на Паскале имеет четко выраженную структуру – последовательность разделов, нарушать которую нежелательно.
Любая программа состоит из заголовка и разделов.
Заголовок записывается как первая строка программы и начинается со слова Program, за которым следует имя программы: