- •1. Системы счисления
- •Десятичная система счисления
- •Двоичная система счисления
- •Восьмеричная и шестнадцатеричная системы счисления
- •Перевод чисел из любой системы счисления в десятичную
- •Перевод чисел из десятичной системы счисления в любую другую
- •2. Алгебра логики
- •2.1. Логические операции
- •Инверсия
- •Конъюнкция
- •Дизъюнкция
- •Эквиваленция (равнозначность)
- •Импликация
- •Антиконъюнкция
- •Антидизъюнкция
- •2.2. Нормальные формы
- •Конъюнктивная нормальная форма
- •Дизъюнктивная нормальная форма
- •3. Классические основы построения ЭВМ
- •3.1. Машина Тьюринга
- •Основные положения машины Тьюринга
- •3.2. Автомат Неймана
- •3.3 Архитектура классической ЭВМ
- •4. Применение средств алгебры логики для описания функционирования устройств компьютера
- •Логические схемы
- •Построение логических схем
- •5. Введение в алгоритмизацию
- •6. Знакомство со средой Турбо Паскаль
- •6.1. Общие сведения
- •6.2. Запуск Турбо-Паскаля на выполнение
- •6.3. Назначение функциональных клавиш системы Турбо-Паскаль
- •6.4. Работа с текстовым редактором Турбо-Паскаля
- •Клавиши перемещения курсора
- •Работа с блоками текста
- •7. Основы алгоритмизации
- •7.1. Алгоритм
- •7.2. Алгоритмические структуры
- •8. Программирование на языке Pascal
- •8.1. Алфавит языка
- •8.2. Арифметические выражения и правила их записи
- •Знаки операций
- •Операции div и mod
- •8.3. Типы данных
- •Целые типы
- •Логический тип
- •Символьный тип
- •Строковый тип
- •Вещественный тип
- •8.4. Стандартные функции
- •8.5. Структура программы на языке Паскаль
- •8.6. Описательная часть программы
- •8.7. Исполнительная часть программы
- •8.8. Оператор присваивания
- •8.9. Операторы ввода-вывода
- •Оператор ввода
- •Оператор вывода
- •8.10. Комментарии в программе
- •9. Ветвления
- •9.1. Операторы условия и перехода
- •Логический оператор
- •Операции отношения
- •Логические операции
- •9.2. Оператор выбора
- •10. Циклические вычислительные процессы
- •10.1. Оператор цикла с параметром
- •10.2. Оператор цикла с постусловием
- •10.3. Оператор цикла с предусловием
- •10.4. Вложенные циклы
- •10.5. Оператор прерывания цикла
- •11. Операции с индексированными переменными
- •11.1. Массивы одномерные
- •11.2. Описание массивов
- •Ввод элементов массива
- •Вывод элементов массива
- •11.3. Обработка одномерных массивов
- •12. Двумерные массивы
- •12.1. Матрицы
- •12.2. Описание двумерного массива
- •Ввод элементов двумерного массива
- •Вывод элементов двумерного массива
- •12.3. Обработка двумерных массивов
- •13. Подпрограммы
- •13.1. Функции и процедуры
- •Структура программы, содержащей процедуру (функцию)
- •13.2. Процедуры
- •13.3. Вложенные процедуры
- •Директива forward
- •13.4. Функции
- •14. Обработка строк текста
- •14.1. Символьные переменные
- •Фрагмент таблицы ASCII-кодов букв латинского алфавита
- •Фрагмент таблицы ASCII-кодов букв русского алфавита
- •14.2. Функции обработки символьных переменных
- •14.3. Строковые переменные
- •14.4. Функции обработки строковых переменных
- •14.5. Процедуры обработки строковых переменных
- •14.6. Примеры обработки строковых переменных
- •15. Структурированные типы данных
- •15.1. Записи
•с фиксированной точкой
0.5 +5.0 -133.15
•с плавающей точкой
3.5 Е 2 0.45 Е -3
Форма с плавающей точкой используется для изображения очень больших или очень маленьких чисел.
8.4. Стандартные функции
Имя функции |
Математическая запись |
Тип результата |
|
|
|
sin (x) |
sin x |
вещ. |
|
|
|
cos (x) |
cos x |
вещ. |
|
|
|
arctg(x) |
аrctgx |
вещ. |
|
|
|
exp (x) |
ex |
вещ. |
|
|
|
ln (x) |
ln x |
вещ. |
pi |
3.14 |
вещ. |
abs (x) |
│x│ |
вещ. |
sqr (x) |
x2 |
вещ. |
sqrt (x) |
x |
вещ. |
|
|
|
trunc (x) |
ближайшее наименьшее целое |
Цел. |
|
число |
|
|
|
|
int (x) |
целая часть числа |
цел. |
|
|
|
round (x) |
ближайшее целое число |
цел. |
|
(математическое округление) |
|
|
|
|
frag (x) |
дробная часть числа |
вещ. |
|
|
|
random (x) |
генератор случайных чисел от 0 до |
вещ. |
|
x; если x - отсутствует диапазон |
|
|
чисел 0 ÷ 1 |
|
odd (x) |
возвращает TRUE, если x - число |
лог. |
|
нечетное |
|
|
|
|
Например: |
|
|
trunс(3.7) = 3 |
|
|
trunc(3.1) = 3 |
|
|
trunc(-3.7) = -4 |
|
|
int (3.4) = 3 |
|
|
int (3.7) = 3 |
|
|
int (-3.4) = -3 |
|
|
round (3.14) = 3 |
|
|
round (3.74) = 4 |
|
|
round (-3.14) = -3 |
|
|
42
Аргументом стандартной функции может быть переменная, константа, выражение, стоящее справа от имени в скобках. Для тригонометрических функций аргумент задается в радианах.
При написании формул в программе на Паскале необходимо учитывать все правила записи арифметических выражений.
Например:
x = −b + b2 − 4ac
2a
Данное выражение в программе на языке Паскаль будет выглядеть: x: = ( -b + sqrt(sqr(b)–4*a*c) )/( 2*a ) ;
Паскаль не допускает смешенных выражений. Допустимы выражения, в которых слева от знака присваивания – вещественная переменная, справа - целое выражение.
Если в выражении есть хотя бы одна вещественная переменная, все выражение будет вещественным.
Некоторые полезные формулы
Формула возведения числа в любую степень: ax =ex*ln (a)= exp(x*ln(a))
Формула перевода числа из градусов в радианы: xрад = xo * pi/180
8.5. Структура программы на языке Паскаль
Программа – это последовательность инструкций компьютеру приводящих к конечному результату за конечное число шагов.
Программа, написанная на алгоритмическом языке, переводится на язык машинных команд: program <имя>;
<описательная часть>; <раздел функций и процедур>; begin
<исполнительная часть>; end.
Зарезервированные слова:
•program <имя>– необязательная строка;
•begin – начало;
•end – конец.
<имя> - присваивается составителем программы (строится по правилам составления переменных).
43
8.6. Описательная часть программы
Все переменные, используемые в программе, должны быть описаны. Описание начинается со служебного слова var.
program ff; var
i,n: integer; x,y,z: real; begin;
...
Список переменных от типа отделяется “:”, одно описание от другого - “;”, список переменных перечисляется через “,”. Если в программе используются метки, то они описываются с помощью служебного слова label. Метки могут быть числовые и символьные.
В программах на Паскале можно использовать константы, которые описываются с помощью служебного слова const.
const n=100;
…
Переменная-константа (n), более в программе не описывается, ее тип определяется присвоенным ей числовым значением.
Для определения пользовательского типа данных используют служебное слово - type. type
in=integer; var
a,b: in;
…
С помощью служебного слова uses можно подключать к программе стандартные библиотечные модули. Стандартные модули объединяют функции определенного назначения и, в случае необходимости, подключаются к программе.
Например, для использования функции очистки экрана (clrscr), к программе подключают стандартный модуль crt.
uses crt;
…
8.7. Исполнительная часть программы
Выполнение программы начинается именно с исполнительной части.
Отдельные инструкции, входящие в программу, называются операторами. Операторы отделяются один от другого – “;”.
Операторы бывают трех типов: пустой оператор;
44