- •Формы записи алгоритмов
- •Основные алгоритмические конструкции
- •Примеры составления блок-схемы алгоритма
- •Основные элементы языка Pascal
- •Арифметические операции, функции, выражения
- •Стандартные функции Паскаля
- •Структура программы
- •Операторы языка
- •Пустой оператор
- •Оператор присваивания
- •Составной оператор
- •Простейший ввод и вывод
- •Разветвляющиеся алгоритмы
- •Условный оператор
- •Оператор выбора
- •Циклические алгоритмы
- •Цикл с параметром
- •Циклы с условием
- •Цикл с предусловием
- •Цикл с постусловием
- •Вложенные циклы
- •Массивы
- •Примеры описания одномерных массивов
- •Действия над массивами
- •Действия над элементами массива
- •Ввод-вывод элементов массива
- •Примеры решения типовых задач на одномерные массивы
- •Пример 1. Сформировать и вывести на экран последовательность из п элементов одномерного массива, вводимых с клавиатуры.
- •Двумерные массивы
- •Процедуры обработки матриц
- •Примеры решения типовых задач на двумерные массивы Пример 1. Программа ввода-вывода двумерного массива
- •Операции над строками
- •Стандартные строковые процедуры и функции
- •Примеры программ работы со строковыми переменными
- •Множества
- •Формат записи множественных типов:
- •Операции над множествами
- •Объединение Пересечение Разность
- •Процедуры
- •Функции
- •Работа с файлами в Паскале
- •Основные процедуры и функции для работы с файлами
- •Типизированные файлы Паскаля
- •Текстовые файлы Паскаля
- •Динамические структуры Линейные списки (однонаправленные цепочки)
- •Описание списка
- •Формирование списка
- •Просмотр списка
- •Удаление элемента из списка
- •Прохождение списка
- •Пример программы создания и использования связанного списка
- •Графика на Паскале
- •InitGraph( gd, gm,’ указывается путь к драйверу, чем подробнее, тем лучше’).
- •Базовые процедуры и функции
- •Процедуры модуля Graph
- •Функции модуля Graph
- •Цветовая шкала
- •Построение дуг и окружностей
- •Стандартные стили заполнения
- •Пример 2.Разработать личную библиотеку, включив в нее процедуры:
Операторы языка
Оператор – это описание действий, которые будут выполнены при реализации алгоритма. В Паскале существуют 2 вида операторов: простые и структурные.
Простые операторы: оператор присваивания, оператор перехода, процедуры и функции, пустой оператор. Структурные операторы: составной оператор, оператор условия, оператор варианта, оператор цикла.
Пустой оператор
В программе может применяться пустой оператор, не выполняющий никакого действия, представляющий собой точку с запятой. Он может потребоваться для осуществления на него безусловного перехода или для более наглядного просмотра программы.
Goto M1;
. . . .
M1:
. . . .
Оператор присваивания
Оператор присваивания используется для задания значения переменных и имеет следующий синтаксис:
имя_переменной:= выражение;
Вычисляется выражение, стоящее в правой части оператора, после чего его значение записывается в переменную, имя которой стоит слева. Тип выражения и тип переменной должны быть совместимы, т.е. множество допустимых значений для типа выражения содержится во множестве допустимых значений для типа переменной.
Составной оператор
Составным оператором считается последовательность произвольных операторов, заключенная в операторные скобки - зарезервированные слова begin ... end. Допускается произвольная глубина вложенности составных операторов. Составной оператор применяется там, где по синтаксическим правилам языка может стоять только один оператор, а нам надо выполнить несколько действий. В этом случае набор необходимых команд должен быть оформлен как составной оператор. По сути, все тело программы представляет собой один составной оператор.
Простейший ввод и вывод
Рассмотрим простейшие процедуры ввода и вывода. По умолчанию ввод осуществляется с клавиатуры, а вывод на экран. К операторам ввода относятся:
Read(<список переменных через запятую>);
Readln(<список переменных>);
Readln;
Второй отличается от первого тем, что после ввода переводит курсор на новую строку, точнее, в конце своей работы считывает с клавиатуры код клавиши <Enter>. Третий оператор используется для организации паузы - выполнение программы продолжится, как правило, только после нажатия на клавиатуре клавиши <Enter>.
К операторам вывода относятся:
Write(<список вывода>);
Writeln(<список вывода>);
Writeln;
В списке вывода кроме имен переменных можно писать строковые константы (последовательность символов в апострофах) и даже выражения (выводятся их значения). Второй оператор отличается от первого тем, что после вывода переводит курсор на новую строку. Третий оператор просто переводит курсор на новую строку.
Форма записи параметра в процедуре Write имеет следующий вид:
Write(параметр, параметр:B1, параметр:B1:B2)
где В1 - ширина поля, B2 - длина дробной части. По умолчанию integer занимает 7 позиций, real - 13 позиций. В целой части числа записывается первая отличная от нуля цифра. Шесть последующих цифр составляют дробную часть мантиссы. Одну позицию занимает буква е, которая обозначает основание степени, которое соответствует числу 10, одна позиция отводится под знак порядка и две - для величины порядка.
Например, если даны три числа: А = 3.6, В = 7.4, С = -2.5 и напечатан оператор Write('A=',A:4:1,' B=',B,' C=',C:6:1), то в результате будет выведено: А= 3.6 В= 7.400000Е+00 С= -2.5
Рассмотрим в качестве примера программу определения координат материальной точки (х; y) для заданной секунды ее полета (t) по параболической траектории, вычисляемых по формулам:
х = v·t·cos(O), y = v·t·sin(O) - g·t2 / 2,
где v - начальная скорость точки, О - угол ее бросания, g - ускорение свободного падения, равное 9,81 м/с2.
program traekt;
Const g = 9.81;
Var x, y, v, O : real; t : integer;
Begin
read(v, O, t);
x := v * t * cos(O);
y := v * t * sin(O) - g * t * t /2;
writeln('Координата х=',x,' Координата y=',y)
End.
ПРИЛОЖЕНИЕ 3