СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ
Благодаря готовым учебным материалам для работы в классе и дистанционно
Скидки до 50 % на комплекты
только до
Готовые ключевые этапы урока всегда будут у вас под рукой
Организационный момент
Проверка знаний
Объяснение материала
Закрепление изученного
Итоги урока
Паскаль - язык профессионального программирования, который назван в честь французского математика и философа Блеза Паскаля (1623-1662) и разработан в 1968-1971 гг. Никлаусом Виртом. Первоначально был разработан для обучения, но вскоре стал использоваться для разработки программных средств в
профессиональном программировании.
Программы на языке Паскаль имеют блочную структуру:
Блок типа PROGRAM - имеет имя, состоящее только из латинских букв и цифр. Его присутствие не обязательно, но рекомендуется записывать для быстрого распознавания нужной программы среди других листингов.
Программный блок, состоящий в общем случае из 7 разделов:
раздел описания модулей (uses);
раздел описания меток (label);
раздел описания констант (const);
раздел описания типов данных (type);
раздел описания переменных (var);
раздел описания процедур и функций;
раздел описания операторов.
Общая структура программы на языке Паскаль следующая:
Рrogram ИМЯ..; {заголовок программы}
Uses ...; {раздел описания модулей}
Var ..; {раздел объявления переменных}
...
Begin {начало исполнительной части программы}
... {последовательность
... операторов}
End. {конец программы}
Начнем знакомство с Паскалем с программы, которая складывает два числа и выводит сумму на экран.
Откройте файл, в который Вы запишите эту программу. Для этого нажмите клавишу F10, чтобы выйти в главное меню, затем клавишами перемещения курсора выберите опцию File, а в выпавшем меню команду New.
Примечание.
Обратите внимание на оформление текста программы.
Program Summa2;
{Задача. Вычислить сумму двух чисел и вывести на экран.
Решение. Иванов Петр, 10 А класс.}
Var
number1, {переменная для хранения первого числа}
number2, {переменная для хранения второго числа}
rezult {переменная для хранения результата вычисления}
: integer;
Begin {признак начала программы}
number1 := 3; {присваиваем переменной number1 значение 3}
number2 := 4; {присваиваем переменной number2 значение 4}
{складываем значения переменных number1 и number2 и результат присваиваем переменной rezult }
rezult := number1 + number2;
Write (number1, '+', number2,'=',rezult); {вывод примера на экран}
End. {признак конца программы}
Подведем итог.
Имя этой программы Summa2. Заметим, что требования к имени выполняются: оно отражает содержание программы, а также не содержит недопустимых символов.
Далее идет специально выделенный комментарий, в котором вы должны записать подробно условие задачи и указать, кто написал эту программу и когда.
Из разделов описаний имеется лишь один - раздел переменных. Он начинается со служебного слова Var. Мы описали три переменные: number1, number2, rezult. Все они переменные целого типа. Поэтому мы перечислили их через запятую, поставили двоеточие и указали тип переменных. Подобные объявления разделяются между собой точкой с запятой.
После описательной части идет раздел операторов, начинающийся со служебного слова Begin, после которого идут операторы языка.
Недостатком этой программы является то, что значения переменных постоянны. А нам нужно научиться писать такие программы, которые решают поставленные задачи в общем виде, т. е. для любых значений переменных. Для этого мы научимся запрашивать значения у пользователя, анализировать их и выдавать соответствующий результат.
Оператор присваивания. Арифметические выражения
Первый оператор, с которым мы познакомимся - оператор присваивания.
Оператор присваивания - основной оператор любого языка программирования. Общая форма записи оператора:
имя величины := выражение
Например:
V:=A;
или
V:=A+1;
При помощи оператора присваивания переменной могут присваиваться константы и выражения, значения переменных.
Как только в программе встречается переменная, для неё в памяти отводится место. Оператор присваивания помещает значение переменной или значение выражения в отведённое место.
Если в процессе выполнения программы встречается переприсваивание (т.е. та же самая переменная принимает другое значение), то старое значение переменной стирается, на свободное место записывается новое значение. Команда присваивания позволяет лучше понять смысл слова переменная (т.е. меняющая своё значение по ходу программы).
Выражение может быть арифметическим, логическим или литерным. Важно, чтобы тип величины был согласован с видом выражения.
Арифметические выражения должны быть записаны в так называемой линейной записи.
Нельзя опускать знаки операций, например писать 5b. Для записи произведения чисел 5 и b надо писать 5*b;
аргументы функций (sin, cos и др.) как и аргументы вспомогательных алгоритмов, записываются в круглых скобках, например sin(x), cos(4*x).
Порядок выполнения операций
Порядок выполнения операций при вычислении арифметических выражений можно регулировать при помощи скобок по обычным правилам. Там, где скобки отсутствуют, ЭВМ выполняет операции в следующем порядке:
вычисляет значение всех алгоритмов-функций и стандартных функций;
выполняет справа налево все операции возведения в степень;
выполняет слева направо все операции умножения и деления;
выполняет слева направо все операции сложения и вычитания.
В нашем случае сначала переменной number1 присваивается значение равное 3 и переменной number2 присваивается значение равное 4, затем вычисляется значение выражения (number1 + number2) и оно присваивается переменной rezult.
Сумма чисел посчитана.
Теперь надо вывести ее значение на экран. Для этого используют оператор Write - записать (вывести) на экран значение переменной, записанной в скобках. В нашем случае значение переменной number1, затем символ + , далее значение переменной number2, символ = и, наконец, значение результата rezult.
И, наконец, в конце раздела операторов стоит служебное слово End, после которого стоит точка.
Задание.
Наберите текст программы на компьютере и выполните ее (для запуска программы воспользуйтесь комбинацией клавиш Ctrl и F9).
Внимание!
Не забывайте о порядке на дискете и в файле:
имя программы должно соответствовать ее содержанию
имя файла должно быть таким же, как и имя программы
файлы, содержащие программы, относящиеся к одной теме, должны находиться в одном каталоге
название этого каталога должно отражать его содержание
Задание.
Измените программу так, чтобы она подсчитывала сумму четырех чисел.
Основные определения. Типы данных.
Алгоритм - четкая последовательность действий, необходимая для решения задачи.
Программа - алгоритм, записанный на языке программирования.
Алфавит языка - набор элементарных символов, используемый для составления программ.
Алфавит содержит:
52 буквы латинского алфавита (строчные и заглавные);
арабские цифры (0-9);
специальные символы:
знаки математических действий (+ - * / ),
знаки пунктуации (. : , ; " ` ),
скобки ( [ ] ( ) { } ),
знак пробела,
знаки отношений (< > =)
Идентификатор (имя) - имя какого-либо элемента программы, которое должно удовлетворять следующим требованиям:
длина имени не должна превышать 63 символа
первым символом не может быть цифра
переменная не может содержать пробел
имя не должно совпадать с зарезервированным (служебным) словом
прописные и строчные буквы воспринимаются одинаково
Зарезервированные (служебные) слова - это слова, использующиеся только по своему прямому назначению. Их нельзя использовать в качестве переменных, так как они выполняют определенную смысловую нагрузку.
Примеры зарезервированных слов: AND, GOTO, PROGRAM, ELSE, IF, RECORD, NOT, ARRAY, REPEAT, UNTIL, BEGIN, IN, SET, END, CASE, CONST, USES, INTERFACE, STRING, LABEL, THEN, OF, DIV, TO, VAR, DO, TYPE, WHILE, DOWNTO, FILE, FUNCTION, PROCEDURE и другие.
Переменные (Var) - вид данных, который может изменять свое значение в ходе программы, описывают переменные после зарезервированного слова Var.
Константы (Const) - вид данных, который является постоянным на всем протяжении выполнения программы, описывают константы после зарезервированного слова Const.
Комментарии - некоторая запись, служащая для пояснения программы, которая записывается в фигурных скобках.
Типы данных.
Для временного хранения информации в операторах памяти машины в языке Паскаль используются константы и переменные. Они могут быть различных типов:
целых чисел (см. ниже);
действительных чисел (real);
символьный тип (char);
строковый (string);
логический (boolean);
сложные (комбинированный (record), множественный (set) и другие).
Над целыми типами определены такие операции:
"+" - сложение;
" * " - умножение;
" - " вычитание;
div - целочисленное деление;
mod - получение остатка от целочисленного деления.
Вещественные типы:
Вещественные типы представляются с некоторой точностью, которая зависит от компьютера. Вам необходимо знать, что вещественный тип разделяется на несколько типов, но использовать мы будем вещественные данные только типа Real, которые занимают 6 байт, имеют диапазон возможных значений модуля от 2.9Е-39 до 1.7Е+38 и точность представления данных - 11...12 значащих цифр.
Несмотря на то, что в Pascal имеется широкий выбор вещественных типов, доступ к некоторым из них (single, double, extended) возможен при особых режимах компиляции. Особое положение в Turbo Pascal занимает тип comp, трактующийся как вещественное число без экспоненциальной и дробной частей. Он сохраняет 19 - 20 значащих цифр и знак числа. В то же время comp полностью совместим с любыми другими вещественными типами.
В языке Паскаль числа могут быть представлены в двух видах: с фиксированной точкой и плавающей точкой.
Числа с фиксированной точкой изображаются десятичным числом с дробной частью, которая может быть и нулевой. Например, 27.9, 5.00
Такие большие числа как 137000000 можно записать в виде чисел с десятичным порядком . Такие числа имеют вид mEp. Здесь m - мантисса; E - признак записи числа с десятичным порядком; p - степень числа 10. Получится 1.37Е+8. Такие числа, представленные с десятичным порядком и называются числами с плавающей точкой
Компьютер, по умолчанию, представляет действительные числа в виде чисел с плавающей точкой. Такое представление чисел не очень нравится пользователям. Поэтому мы будем “заставлять” компьютер выдавать действительные числа в более привычном варианте следующим образом:
R:m:n, где R - действительное число, m - количество позиций, отводимых для целой части, n - количество позиций, отводимых для дробной части.
Например, если мы хотим вывести на экран число Chislo с фиксированной точкой, причем знаем, что для вывода целой части этого числа достаточно 7 мест, а вывод дробной части ограничим сотыми, то мы запишем вывод так:
Write (Chislo:7:2)
Символьный тип (char)
Значениями данного типа является множество всех символов компьютера: русская или латинская большая или маленькая буква, цифра, знак препинания, специальный знак (например, "+", "-", "*", "/", "=" и др.) или пробел " ". Каждый из символов имеет уникальный номер от 0 до 255, т. е. внутренний код, который возвращает функция ORD. Символьная константа или символьная переменная - любой символ языка, заключённый в апострофы. Например,
Var
Simvol : char;
Строковый тип (string)
Значением строковой величины является строка переменной длины (быть может пустая). Строковая константа или строковая переменная представляет собой произвольную последовательность символов, заключенную в апострофы. Например:
Var
Stroka : string;
Логический тип (boolean)
Логический тип данных часто называют булевым по имени английского математика Д. Буля, создателя математической логики. В языке Паскаль имеются две логические константы TRUE и FALSE. Логическая переменная принимает одно из этих значений и имеет тип Boolean. Для сравнения данных предусмотрены следующие операции отношений: <, <=, =, <>, >, >=. А также существуют специфичные для этого типа логические операции OR - или; AND - и; NOT - не.
При проверке некоторых условий результат операции может быть истинным или ложным. Например, 3>5 ложь.
Более подробно этот тип данных мы рассмотрим при изучении условного оператора.
Сложные типы
К сложным или структурированным типам относятся массивы, записи, множества, которые требуют специального изучения и здесь рассматриваться не будут.
Задание.
Откройте новый файл. Создадим программу, в которой опишем несколько переменных разного типа, введем в них значения и выведем на экран.
Program TipDann;
Uses Crt
Var
Chislo1 : Integer;
Chislo2 : Real;
Simvol : Char;
Stroka : String;
Logika : Boolean;
Begin
ClrScr;
Chislo1:=12;
Chislo2:=Chislo1*2;
Chislo2:=Chislo2/5;
Simvol:=‘d’;
Stroka:=‘Строчка’;
Logika:= Chislo1> Chislo2;
WriteLn (‘Вывод значений:’);
WriteLn (‘Значение переменной Chislo1 : ’,Chislo1);
WriteLn (‘Значение переменной Chislo2 : ’,Chislo2:5:2);
WriteLn (‘Значение переменной Simvol : ’,Simvol);
WriteLn (‘Значение переменной Stroka : ’,Stroka);
WriteLn (‘Значение переменной Logika : ’,Logika);
End.
Внимательно рассмотрите каждую строчку программы. Обратите особое внимание на описание переменных: Chislo1 - переменная целого типа, Chislo2 - действительного, Simvol - символьного, Stroka - строкового, Logika - логического. Далее в основной программе идет присвоение переменной Chislo1 целого числа 12, переменной Chislo2 - целого числа 24. Обратим внимание, что переменной действительного типа Chislo2 присвоено целое число: никакой ошибки нет, т. к. множество целых чисел является подмножеством множества действительных чисел. Следующая строчка еще более интересная: переменной Chislo2 присваивается значение той же переменной, только деленной на 5. Такое присваивание используют в программах, если предыдущее значение этой переменной уже не понадобится и для более рационального использования описанных переменных. Для того чтобы переменной символьного типа присвоить какой-либо символ (например, d), надо этот символ записать в апострофах (знак «’»). Аналогично поступают с переменными строкового типа (смотри следующую строку программы). А про переменные логического типа мы знаем, что им можно присваивать только два значения: True и False. В этой программе мы присвоим значение результата сравнения двух переменных, здесь оно будет равно True. А теперь выведем присвоенные значения на экран.
Задание.
Измените значения переменных и проанализируйте результаты выполнения программы. Сохраните программу на дискете под правильным именем в соответствующем каталоге.
© 2015, Алексенко Сергей Онуфриевич 621