
- •А.В. Басова, о.В. Смирнова, с.Н. Ищенко, а.Ю. Полуян краткий курс информатики
- •Введение в информатику
- •Основное понятие информатики – информация
- •Измерение информации
- •Кодирование символьной информации
- •Системы счисления
- •Позиционные системы счисления Изображение целых значений в позиционных системах счисления: десятичная, двоичная и шестнадцатеричная системы
- •Соответствие десятичных цифр (чисел)
- •Изображение дробных чисел в двоичной и шестнадцатеричной системах счисления
- •Арифметические действия в двоичной и шестнадцатеричной системах счисления
- •Краткая история вычислительной техники
- •Конфигурация персональных компьютеров
- •Основные узлы системного блока:
- •Основной платой пк является материнская плата. На ней расположены:
- •Основными параметрами процессоров являются:
- •Программное обеспечение компьютеров
- •Классификация служебных программных средств:
- •Классификация прикладного программного обеспечения:
- •Операционная и файловая системы компьютера
- •Компьютерные вирусы
- •Основные источники вирусов:
- •Основные ранние признаки заражения компьютера вирусом:
- •Признаки активной фазы вируса:
- •К общим средствам, помогающим предотвратить заражение и его разрушительных последствий относят:
- •Различают такие типы антивирусных программ:
- •Логические основы алгоритмизации
- •Элементы теории алгоритмов
- •Введение в язык программирования паскаль
- •Функциональные клавиши
- •Текстовый редактор
- •Прогон и отладка программы
- •Справочная служба Турбо Паскаля
- •Алфавит языка Паскаль
- •Структура программы
- •Заголовок программы.
- •Раздел описания меток
- •Раздел описания констант.
- •Раздел описания типов
- •Раздел описания переменных
- •X, y, z: Real; {предопределенный тип}
- •I, j, k: Integer; {предопределенный тип}
- •Операторы языка паскаль
- •Алгоритмы ветвящейся структуры Условный оператор if
- •Условный оператор case
- •Алгоритмы циклической структуры
- •Массивы
- •Двумерные массивы
- •Работа с большими массивами
- •Процедуры и функции
- •Заголовок
- •Процедурные типы. Процедуры и функции.
- •Рекурсия и опережающее описание
- •Стандартные модули
- •Использование процедуры crt Программирование клавиатуры
- •Текстовый вывод на экран
- •Программирование звукового генератора
- •Использование библиотеки graph
Операторы языка паскаль
Операторы языка описывают некоторые алгоритмические действия, которые необходимо выполнить для решения задачи. Тело программы можно представить как последовательность таких операторов. Идущие друг за другом операторы программы разделяются точкой с запятой.
Все операторы языка Паскаль можно разбить на две группы: простые и структурированные.
Простые операторы не содержат в себе других операторов. К ним относятся:
оператор присваивания;
обращение к процедуре;
оператор безусловного перехода GOTO;
пустой оператор.
Оператор присваивания выполняет присваивание переменной или функции значение выражения. Для этого используется знак присваивания := , слева от которого записывается имя переменной или функции, которой присваивается значение, справа - выражение, значение которого вычисляется перед присваиванием:
<Переменная>:=<Выражение>
Допустимо присваивание значений переменным и функциям любого типа, за исключением типа файл. Тип выражения и тип переменной (или функции) должны быть совместимы для присваивания.
Пример. Операторы присваивания
Х := Y;
Z :=А + В;
Res := (I>0) and (K<100) ;
I := Sqr(J) + I*К;
Оператор безусловного перехода GOTO позволяет изменить стандартный последовательный порядок выполнения операторов и перейти к выполнению программы, начиная с заданного оператора. Оператор, на который происходит переход, должен быть помечен меткой. Эта же метка должна быть указана и в операторе GOTO.
Использовать оператор GOTO следует крайне осторожно. Широкое его применение без особых на то оснований ухудшает понимание логики работы программы. Безусловный переход можно осуществлять далеко не из каждого места программы и не в любое место программы. Так, нельзя с помощью этого оператора перейти из основной программы в подпрограмму или выйти из подпрограммы, не рекомендуется осуществлять переход внутрь структурированного оператора, т. к. он может дать неправильный результат.
Пример. Найти частное от деления целых чисел.
Рrogram Primer;
Label Out; {описание метки}
Var X, Y, Res: Integer; {описание переменных}
begin
Write('Введите делимое');{вывод сообщения на экран}
ReadLn(X); {чтение числа}
Write('Введите делитель');{вывод сообщения на экран}
ReadLn(Y); {чтение числа}
if Y = 0 then
begin {Составной оператор}
WriteLn('Деление на ноль!'); {выход при нулевом делителе}
goto Out;
end
else Res:=X div Y;
WriteLn('Частное равно: ', Res);
Out: ; {метка "пустого" оператора}
end.
Пустой оператор не выполняет никакого действия и никак не отображается в программе (за исключением, быть может, метки или точек с запятыми, отделяющих пустой оператор от предыдущих или последующих операторов). Он может потребоваться для осуществления на него безусловного перехода.
Ввод числовых данных можно осуществлять оператором присваивания, например:
А:=5;
ВВ:=6.143;
Однако в этом случае программа становится не универсальной, так как выполняется только при этих значениях переменных. Для выполнения программы при различных значениях переменных предназначен оператор ввода Read.
Как только во время выполнения программы встречается оператор Read, машина останавливается и ожидает ввода числовых значений. Когда числовые значения введены, процесс выполнения программы продолжается. Оператор ввода имеет вид
Read (a1, a2,.... an),
где a1, а2, , … , an — переменные, которые последовательно получают вводимые значения.
Числовые значения указываются через пробел, признаком окончания ввода является нажатие клавиши <Enter>. Числовые значения вводятся после набора на экране дисплея всей программы и запуска ее на выполнение.
Пусть переменным А, В, С необходимо присвоить следующие значения в процессе выполнения программы:
А=0.21 В=45.34 С=6371
Оператор ввода примет вид
Read (А, В, С),
а числовые значения можно ввести следующим образом:
0.21 45.34 6371
Если вновь повторить запуск программы, то можно ввести любые другие значения.
Если переменная описана как действительная (Real), а ее значение является целым числом, то можно вводить число как целое и как действительное. Машина сама преобразует целое число в действительное.
Допускается использование оператора ввода без параметров ReadLn, осуществляющего переход на новую строку при вводе данных. Дополнительно к этому имеется оператор ввода
ReadLn (a1, а2,.... an),
который сначала вводит значения a1, а2, ..., an, а затем осуществляет переход на новую строку.
Вывод данных из памяти ЭВМ на экран дисплея осуществляет оператор вывода Write. Форма записи оператора
Write (a1, а2,..., аn),
где ai, а2, ..., an являются выражениями (переменными, строкой символов, функциями, константами).
Например, оператор
Write ('Значение В-',В)
выводит на экран дисплея строку
Значение В-, а затем значение переменной В.
Для вывода целых и действительных чисел можно указывать форматы в операторе Write. Формат указывается через двоеточие после переменной. Для действительных чисел формат состоит из двух величин. Первая величина обозначает общее поле выводимого значения, второе — поле дробной части. Общее поле включает в себя отрицательный знак числа или пробел для положительного числа, количество цифр в целой части, точку и количество цифр в дробной части.
Так, вывод значения Y в соответствии с форматом WRITE (Y:5:2) означает, что на изображение всего значения Y отведено пять позиций, из них две — на дробную часть.
Если формат отведен больше, чем количество позиций, занимаемых числом, то перед целой частью будет отведено соответствующее количество пробелов, а после дробной части — соответствующее количество нулей.
Для вывода целых чисел формат дробной части не указывается.
В языке ПАСКАЛЬ допускается использование оператора вывода без параметровWriteLn, который осуществляет переход на новую строку экрана дисплея. Последующий оператор вывода с параметрами будет выводить данные на новую строку экрана. Оператор вывода без параметров часто используется для пропуска пустых строк.
Оператор вывода
Writeln (a1, а2,.... an),
осуществляет сначала вывод на экран дисплея значений a1, a2, ..., an, а затем — переход на новую строку. Таким образом, данный оператор эквивалентен двум оператор;
Write (ai,a2,..., an);
WriteLn;
Операторы ввода и вывода используются практически во всех программах.
Перед вводом данных рекомендуется давать поясняющий текст с помощью оператора WRITE. Этим самым устанавливается диалог пользователя и машин. Например, для ввода значений А, В, С лучше указать
Write ('Введите значения А, В, С');
Read (А, В, С);
Таким образом, перед вводом числовых значений А, В, С на экране появится сообщение
Введите значения А, В, С
после чего можно вводить значения.
Составной оператор представляет собой совокупность последовательно выполняемых операторов, заключенных в операторные скобки begin и end:
begin
<оператор 1> ;
<оператор 2>;
<оператор N>
end
Он может потребоваться в тех случаях, когда в соответствии с правилами построения конструкций языка можно использовать один оператор, а выполнить нужно несколько действий. В такой составной оператор входит ряд операторов, выполняющих требуемые действия.
В дальнейшем везде, где будет указываться, что можно использовать один оператор, им может быть и составной оператор.
Отдельные операторы внутри составного оператора отделяются друг от друга точкой с запятой. Так как завершающее составной оператор слово end не является отдельным предложением, то перед ним точку с запятой можно не ставить, в противном случае компилятор будет считать, что перед словом end стоит пустой оператор.
Можно считать, что и само тело программы, т. к. оно заключено в операторные скобки begin и end, тоже является составным оператором.