ЭЛЕМЕНТЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

Идентификатор - начинается с буквы или “_” (символа подчеркивания) и состоит из букв, цифр и “_”. Длина идентификатора ограничена длинной программной строки, т.е. 126 символами, но при этом компилятор различает только первые 63 символа. Большие и маленькие буквы не различаются.

Числа в программе - это константы целого или действительного типа. Целые константы представляются в десятичной или шестнадцатеричной системе счисления. Признаком шестнадцатеричной системы является предшествующий символ $. Целые константы должны принадлежать диапазону от -2147483648 до 2147483647. Строки - последовательность символов, заключенных в апострофы (в одиночные кавычки). Максимальная длина строковой константы - 255 символов.

Комментарий в Паскале - любой текст, ограниченный (*.........*) или {........}. Вложенность компонентов допускается лишь двумя способами:

(* ...... {........} ........*) или {......(*........*).......}. В современных версиях программной среды типа PascalABC.NET допускается использовать для комментария двойной слеш в начале строки //.

 

 

СТРУКТУРА ПРОГРАММЫ

Program <название> - заголовок программы

Label - описание меток

Const - описание констант

Type - описание типов

Var - описание переменных

Procedure - описание процедур

Function – описание функций

begin

раздел операторов (основная программа)

end.


ОПЕРАТОРЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

Любая программа на языке Паскаль начинается со слова PROGPAM и заканчивается словом END. (с точкой). Вслед за словом PROGRAM записывается имя программы, которое ей дает автор. Все имена (идентификаторы) записываются с использованием только 26 букв латинского алфавита и 10 арабских цифр. При этом все идентификаторы должны отличаться друг от друга. Вся первая строчка программы называется заголовком программы.

Операторные скобки. Любая последовательность операторов, заключенная между словами BEGIN и END, называется составным оператором. Таким образом, раздел операторов - это составной оператор. В нем описываются все алгоритмические действия, которые необходимо выполнить над исходными данными для получения результата.

Операторы ввода.Часто первыми действиями, выполняемыми программой, являются действия по вводу данных. В языке Паскаль для этой цели служат следующие процедуры чтения:

READ, например, READ(A, B, C);

READLN, например, READLN(A, B);

Оператор присваивания.Оператор присваивания с помощью знака присваивания := разбивается на 2 части: левую и правую. В правой части записывается выражение, значение которого необходимо вычислить.

Условный операторимеет две разновидности:

IF условие THEN оператор1 ELSE оператор2;

IF условие THEN оператор;

Оператор перехода (не рекомендуется): GOTO метка;

Цикл с параметром имеет две разновидности:

FOR I: = M TO N DO оператор; (если начальное значении параметра меньше конечного),

FOR I: = N DOWNTO M DO оператор; (если начальное значении параметра больше конечного).

Цикл с предусловием:WHILE условие DO оператор;

Цикл с постусловием:

REPEAT оператор1;

оператор2;

оператор3;

……………

оператор n

UNTIL условие;

Оператор выбора (варианта):

CASE селектор OF

значение 1: оператор1:

значение 2: оператор2;

…………………………

значение n: оператор n

ELSE оператор

END {of case};

Так же, как и в условном операторе, альтернативная часть “ELSE” не является обязательной.

 

 

ТИПЫ ДАННЫХ В ПАСКАЛЕ

 

 


Рисунок 5. Типы данных в Паскале.

 

 


ВСТРОЕННЫЕ ФУНКЦИИ

Таблица 1.

Имя функции Математическое обозначение Тип результата
Sin (x) Sin x Real
Cos(x) Cos x Real
Ln(x) Ln x Real
Sqrt(x) Real
Arctan(x) Arctg x Real
Exp(x) ex Real
Sqr(x) x2 Integer
Abs(x) |x| Integer
Odd(x) False, x=2n True, x=2n+1 Boolean
Succ(x) x + 1 Integer
Pread(x) x - 1 Integer
Inc(x) x + 1 Integer
Inc(x,n) x + n Integer
Dec(x) x - 1 Integer
Dec(x,n) x - n Integer

 

 


ДОМАШНИЕ ЗАДАНИЯ

 

Домашнее задание № 1

 

Задание «Имя». Написать программу, которая выводит на экран Ваше имя.

 

Задание «Арифметика». Ввести с клавиатуры два числа и найти их сумму, разность, произведение и, если возможно, частное от деления одного на другое.

 

Задание «Уравнение». Для любых введенных с клавиатуры b и c решить уравнение вида bx + c = 0.

Задание «Еще уравнение». Для любых введенных с клавиатуры a, b и c решить уравнение вида

ax2 + bx + c = 0.

Задание «Лампа со шторой».В комнате светло, если на улице день и раздвинуты шторы или если включена лампа. Ваша программа должна, в зависимости от времени суток и состояния лампы и штор, отвечать на вопрос, светло ли в комнате.

 

Домашнее задание № 2

 

Задача «Конус». Вычислить объем и полную поверхность усеченного конуса:

V = 1/3ph(R2+Rr+r2),

S = p(R2+(R+r)l+r2).

Задача «Разветвление».Для произвольных x и a вычислить

w =

Задача «Функция».Для произвольных a и b вычислить функцию .

Задача «Порядок».Распечатать 10 натуральных чисел в возрастающем порядке, начиная с произвольного числа N.

Задача «Табуляция».Протабулировать функцию

при изменении x от -4 до +4 с шагом 0.5. Сделать 2 варианте – с циклами Repeat и While.

Домашнее задание № 3

 

Задача «Заем». Месячная выплата m по займу в S рублей на n лет под процент p вычисляется по формуле:

.

Дано: S, p, n. Найти: m.

Задача «Ссуда».Под какой процент p выдана ссуда величиной S рублей, которая гасится месячными выплатами величиной m в течение n лет. Формулу для вычисления месячной выплаты взять из предыдущей задачи.

Задача «Копирование файла».Создать на диске текстовый файл и скопировать его на экран.

Задача «Фильтр».Вывести на экран только числа из созданного Вами на диске текстового файла, содержащего буквы и числа.

Задача «Сортировка букв».Задать строку из 30 букв и расставить их в алфавитном порядке.

 

 

Домашнее задание № 4

 

Задача «Файл».Создать файл, записать в него 10 чисел, закрыть, потом вновь открыть файл и найти сумму чисел.

 

Задача «Знак числа». Определить знак введенного с клавиатуры числа, использовав подпрограмму-функцию

Задача «Геометрические фигуры». Вычислить площади прямоугольника, треугольника, круга, используя подпрограммы-функции.

 

Задача «Былая слава». В 1912 году американский флаг «Былая слава» имел 48 звезд (по одной на каждый штат) и 13 полос (по одной на колонию). Напечатать «Былую славу 1912 года».

 

Задача «Синусоида». Напечатать график функции у = sin x.

 

Задача «Автоматный распознаватель». Декодировать римскую запись числа, состоящего из любого количества знаков. Правила: Ià1, Và5, Xà10, Là50, Cà100, Dà500, Mà1000. Значение римской цифры не зависит от позиции, а знак – зависит.

 

Задача «Генератор случайных чисел». Построить генератор псевдослучайных чисел по формуле s = (m×s + i) mod c, где m, i, c – целые числа. I вариант: m = 37, i = 3, c = 64. II вариант: m = 25173, i = 13849, c = 65537.

 

Задача «Умножение матриц». Три продавца продают 4 вида товаров. Количество продаваемого товара представлено таблицей A. В таблице B представлены цена каждого товара и комиссионные, полученные от продажи, например:

Таблица A. Количество продаваемого товара
Товар Продавец N1 N2 N3 N4
№ 1
№ 2
№ 3

 

Таблица B. Цена и комиссионные
Товар Цена Комиссионные
N1 1,20 0,50
N2 2,80 0,40
N3 5,00 1,00
N4 2,00 1,50

 

Задать соответствующие таблицам матрицы A и B, получить матрицу

C = AхB и определить:

1) какой продавец выручил больше всего денег с продажи, какой – меньше;

2) какой продавец получил наибольшие комиссионные, какой – наименьшие;

3) чему равна общая сумма денег, вырученных за проданные товары;

4) сколько всего комиссионных получили продавцы;

5) чему равна общая сумма денег, прошедших через руки продавцов?

Задача «Системы счисления». Программа должна считывать с клавиатуры число, записанное в одной системе счисления, и выводить на экран это число в записи по другому основанию, например: исходное число – 112D, старое основание – 16, новое основание – 8, результат – 10455.

 

ь