Арифметические выражения должны быть записаны в так называемой линейной записи согласно следующим правилам:
• выражение должно быть записано в виде линейной цепочки символов;
• используемые операции приведены в таблице:
НАЗВАНИЕ ОПЕРАЦИИ | ФОРМА ЗАПИСИ |
сложение | x + y |
вычитание | x - y |
умножение | x * y |
деление | x / y |
• нельзя опускать знаки операций, например писать 5b. Для записи произведения чисел 5 и b надо писать 5*b;
• аргументы функций (sin, cos и др.) как и аргументы вспомогательных алгоритмов, записываются в круглых скобках, например sin(x), cos(4*x).
Порядок выполнения операций
Порядок выполнения операций при вычислении арифметических выражений можно регулировать при помощи скобок по обычным правилам. Там, где скобки отсутствуют, ЭВМ выполняет операции в следующем порядке:
• вычисляет значение всех алгоритмов-функций и стандартных функций;
• выполняет справа налево все операции возведения в степень;
• выполняет слева направо все операции умножения и деления;
• выполняет слева направо все операции сложения и вычитания.
В нашем случае сначала переменной number1 присваивается значение равное 3 и переменной number2 присваивается значение равное 4, затем вычисляется значение выражения (number1 + number2) и оно присваивается переменной rezult.
Сумма чисел посчитана.
Теперь надо вывести ее значение на экран. Для этого используют оператор Write – записать (вывести) на экран значение переменной, записанной в скобках. В нашем случае значение переменной number1, затем символ + , далее значение переменной number2, символ = и, наконец, значение результата rezult.
И, наконец, в конце раздела операторов стоит служебное слово End, после которого стоит точка.
Внимание! Не забывайте о порядке на дискете и в файле:
• имя программы должно соответствовать ее содержанию,
• имя файла должно быть таким же, как и имя программы,
• файлы, содержащие программы, относящиеся к одной теме, должны находиться в одном каталоге,
• название этого каталога должно отражать его содержание.
Основные определения. Типы данных.
Познакомимся с основными понятиями языка.
Алгоритм – четкая последовательность действий, необходимая для решения задачи.
Программа – алгоритм, записанный на языке программирования.
Алфавит языка – набор элементарных символов, используемый для составления программ. Алфавит содержит:
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) и другие).
Целые типы:
Название | Длина в байтах | Диапазон значений |
Byte | 1 | 0 ... 255 |
ShortInt | 1 | -128 ... 127 |
Word | 2 | 0 ... 65535 |
Integer | 2 | -32768 ... 32767 |
LongInt | 4 | -2147483648 ... 2147483647 |
Над целыми типами определены такие операции:
1. "+" - сложение;2. " * " - умножение;
3. " - " вычитание;
4. div - целочисленное деление;
5. mod - получение остатка от целочисленного деления.
Вещественные типы. Вещественные типы представляются с некоторой точностью, которая зависит от компьютера. Вам необходимо знать, что вещественный тип разделяется на несколько типов, но использовать мы будем вещественные данные только типа Real, которые занимают 6 байт, имеют диапазон возможных значений модуля от 2.9Е-39 до 1.7Е+38 и точность представления данных – 11...12 значащих цифр.
Примечание. Несмотря на то, что в Turbo Pascal имеется широкий выбор вещественных типов, доступ к некоторым из них (single, double, extended) возможен при особых режимах компиляции. Особое положение в Turbo Pascal занимает тип comp, трактующийся как вещественное число без экспоненциальной и дробной частей. Он сохраняет 19 - 20 значащих цифр и знак числа. В то же время comp полностью совместим с любыми другими вещественными типами.
В языке Паскаль числа могут быть представлены в двух видах: с фиксированной точкой и плавающей запятой. Числа с фиксированной точкой изображаются десятичным числом с дробной частью, которая может быть и нулевой. Например, 27.9, 5.00. Такие большие числа как 137.000.000 можно записать в виде чисел с десятичным порядком
. Такие числа имеют вид mEp. Здесь m - мантисса; E - признак записи числа с десятичным порядком; p - степень числа 10. Получится 1.37Е+8. Такие числа, представленные с десятичным порядком и называются числами с плавающей точкой. Например,Математическая запись: | Запись на Паскале: |
4E -4 | |
0.62E+5 | |
-10.88E12 |
Компьютер, по умолчанию, представляет действительные числа в виде чисел с плавающей точкой. Такое представление чисел не очень нравится пользователям. Поэтому мы будем “заставлять” компьютер выдавать действительные числа в более привычном варианте следующим образом:
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 ложь.
Более подробно этот тип данных мы рассмотрим при изучении условного оператора.
Задача2. Найти среднее значение трех чисел.
Примечание. Чтобы найти среднее значение нескольких чисел, нужно сложить эти числа и сумму разделить на количество этих чисел.
Program Srednee;
Uses Crt;
Var
First, Second, Third : integer;
Sum : real;
Begin
ClrScr;
Write (‘Введите первое число ‘);
ReadLn(First);
Write (‘Введите второе и третье числа через пробел ‘);
ReadLn(Second, Third);
Sum := First + Second + Third;
Sum := Sum/3;