- •5.091405 «Обслуговування комп’ютеризованих інтегрованих та робототехнічних систем»
- •Виды алгоритмов
- •Структура програми. Алфавіт. Типи даних та операції
- •Структура программы
- •Алфавит языка
- •Знаки операций
- •Комментарии
- •Типы данных и операции
- •Описание меток
- •Описание переменных
- •Var имя переменной : тип;
- •Описание типов
- •Арифметические выражения
- •Логические выражения
- •Основные операторы
- •Операторы ввода и вывода
- •Ввод с консоли
- •Вывод на консоль
- •Форматный вывод
- •Условные операторы Условный оператор if
- •Оператор выбора case
- •Циклічні розрахункові процеси
- •Оператор цикла с параметром
- •Оператор цикла с условием
- •Регулярний тип (масив)
- •Сортировка массивов
- •Улучшенные сортировки
- •Сортировка Шелла
- •Символьный тип данных
- •Тип динамічні рядки (string)
- •Типи даних, що визначаються користувачем
- •Var Имя множества:Set of базовый тип;
- •Var Имя множества:Имя типа;
- •1. Var Имя записи:record
- •Var Имя записи:Имя типа для записи;
- •Складні програми. Робота з файлами Робота з процедурами та функціями
- •Види файлів. Робота з файлами
- •Когда нужно использовать файлы
- •Разновидности файлов
- •Открытие файла
- •Закрытие файла
- •Считывание из файла
- •Запись в файл
- •Модульна структура програми. Створення інтерфейсу користувача
- •Стандартные модули языка Pascal
- •Подключение модулей
- •Секция реализации
- •Секция инициализации
- •Взаимодействие модулей
- •Компиляция модулей
- •Пример модуля
- •Передача аргументов из командной строки
- •Створення інтерфейсу користувача Текстовый режим
- •Позиционирование
- •Ожидание
- •Пример использования текстовой графики
- •Решение
- •Создание дружественного интерфейса
- •Заставка
- •Ввод информации
- •Приглашения
- •Мова Сі Основні поняття та складові частини мови Сі
- •Структура програми на мові Сі. Елементи мови Сі
- •Типи даних та їх об"явлення. Базові типи даних.
- •1.2.1 Категории типов данных
- •Типи даних, що визначаються користувачем.
- •Вирази та присвоювання
- •Програмування на мові Сі
- •Види операторів. Умовні оператори
- •Оператори циклів
- •Оператори передачі керування
- •Процедури та функції
- •Виклик функцій зі змінною кількістю параметрів. Параметри функції main
- •Структура програми та класи пам"яті. Область життя та область видимості
- •Покажчики та операції над покажчиками
- •Масиви. Робота з масивами
- •Динамічний розподіл пам"яті. Динамічне розміщення масивів
- •Директиви препроцесора
- •Лінійні списки. Робота зі списками
- •Стеки та черги
- •Сортування та злиття списків
- •Пошук в лінійних списках
- •Технологія створення програм
- •Робота з файлами та потоками
- •Открытие файла: функция fopen
- •Константа null
- •Диагностика ошибок: функция perror
- •Функции бинарного чтения и записи fread и fwrite
- •Закрытие файла: функция fclose
- •Пример: подсчет числа символов и строк в текстовом файле
- •Форматный ввод-вывод: функции fscanf и fprintf
- •Понятие потока ввода или вывода
- •Функции scanf и printf ввода и вывода в стандартные потоки
- •Функции текстового преобразования sscanf и sprintf
- •Другие полезные функции ввода-вывода
- •Робота з рядками
- •Определение типов символов
- •Пример: программа "Записная книжка"
- •Аргументы командной строки
Описание меток
Метка представляет собой правильный идентификатор или любое
целое без знака от 1 до 9999. Метки должны быть описаны в подразделе Label. Каждая метка описывается только один раз в каждой программной единице (основной программе или подпрограммах).
Label метка; или Label метка1, метка2, …, меткаN;
В программе метка ставится перед оператором, на который передается управление и отделяется от него символом ":".
Метка : выполняемый оператор;
Примеры описания меток:
Label m1, m2, met1, l1, lab, 125;
Описание переменных
Любая переменная, используемая в программе (и подпрограммах) должна быть определена (описана) в подразделе Var раздела описаний, причем каждая переменная описывается только один раз в каждой программной единице.
Определение переменной должно содержать имя переменной и ее тип, разделенные двоеточием.
Var имя переменной : тип;
Примеры:
Var x:real; i: byte;
S: char; b: boolean;
Days: 1..31;
Переменные одного типа записываются друг за другом через запятые:
Var a, b, c : real;
I,j,k:byte;
m, months:1..12;
Для переменных, описанных в каждой программной единице, отводится определенный объем памяти.
Переменные, описанные в основной (главной) программе, называют глобальными переменными. Общий объем памяти, отведенный под глобальные переменные, не должен превышать 64 Кбайта.
Переменные, описываемые в подпрограммах, называются локальными переменными.
Описание констант производится аналогично в разделе описания констант.
Значение констант не изменяется в процессе выполнения программы.
Описание типов
В простейших случаях тип переменных указывается явно, при их описании в разделе Var:
Var Имя переменной: тип;
Можно сопоставить типу некоторое имя и описать его в разделе Type:
Type Имя типа = Тип;
Например:
Type Diapason = 1..1000;
T_days = 1..31;
T_symbol = 'a'..'z';
T_Month = (j,f,mr,ap,may,jn,jl,ag,s,o,n,d);
Это дает возможность программисту определять и использовать свои собственные типы, а не стандартные.
Далее можно имена типов, введенные в подразделе Type использовать в подразделе Var:
Var
i,i,n:Diapason;
Day:T_days;
Sim,ch:T_symbol;
Mes:T_Month;
Арифметические выражения
Арифметические выражения строятся из арифметических констант, переменных, функций и операций над ними.
Все данные, входящие в арифметические выражения, должны быть одного типа, хотя иногда допускается использовать в одном выражении данные целого и вещественного типов.
При построении арифметических выражений следует учитывать следующие правила:
-
Выражение записывается в строчку. Например, выражение:
на Паскале будет записываться следующим образом:
(2*a*x+3*b*y-4*x)/(2.5*(a+b+c))
-
Скобки в арифметических выражениях только круглые. Число открывающихся скобок должно равняться числу закрывающихся скобок.
-
Нельзя записывать два знака операций подряд, без скобок, например в выражении:
следует записать: (3*a+b)/(-x).
-
Порядок выполнения арифметических операций слева направо в соответствии со старшинством операций:
1) значения функций; 2) *, /, div, mod; 3) +, -.
Рассмотрим порядок вычисления на примере:
Представленное выражение будет вычисляться в седующем порядке:
-
Вычисление функции Sin(x);
-
a*Sin(x); 3) Cos(y); 4) b*cos(y); 5) aSin(x)+b*Cos(y);
6) SQR(aSin(x)+b*Cos(y)) - получено значение в числителе;
-
Вычисление x/y; 8) Sin(x/y); 8) a*a; 9) b*b; 10) SQR(a*a+b*b);
11) SQR(a*a+b*b)*Sin(x/y) - получено значение в знаменателе;
12) числитель/знаменатель - получен результат.