bannerbannerbanner
Pascal Next. Руководство программиста

Никита Борисович Культин
Pascal Next. Руководство программиста

Pascal Next

Pascal Next – компилируемый, типизированный, алгоритмический, универсальный язык программирования и среда разработки, ориентированные на решение задачи обучения основам программирования.

В основе синтаксиса языка Pascal Next лежит синтаксис "классического" Pascal. В тоже время, синтаксис инструкций выбора и циклов заимствован из Basic, что позволило отказаться от "избыточных" инструкций begin.

Язык позволяет работать с целыми и вещественными числами, строками, одномерными и двумерными массивами, текстовыми файлами. В языке определены стандартные математические функции (Sqrt – квадратный корень, Sin – синус, Cos, – косинус Arctg -арктангенс, Trunc – округление с недостатком, Roung – округление с избытком, Rnd – случайное число), функции преобразования типов (IntToStr, StrToInt, FloatToStr, StrToFloat), функции манипулирования строками (Legth – длина строки, Pos – позиция подстроки в строке, Substr – подстрока, UpCase – преобразование к верхнему регистру, LowCase – преобразование к нижнему регистру) и датами (getDay, getMonth, getYear, getDayOfWeek, getTime); есть возможность инициализации массива в инструкции объявления;в текст программы можно включать как многострочные, так и однострочные комментарии.

Книга, которую вы держите в руках, представляет собой описание языка программирования Pascal Next с примерами, демонстрирующие использование инструкций ввода-вывода, инструкций выбора, использование циклов, работу с массивами, строками, файлами, встроенными и пользовательскими функциями.

WWW.pascal-next.ru

Среду разработки Pascal Next можно бесплатно загрузить с сайта www.pascal-next.ru

Также с сайта можно загрузить примеры кода и документацию.

Структура программы

Программа Pascal Next представляет собой совокупность процедур и функций.

Главная процедура, с инструкций которой начинается выполнение программы, обозначается идентификатором program. Все остальные процедуры обозначаются идентификатором procedure, функции – идентификатором function.

Простейшая программа представляет собой одну единственную процедуру program и в общем случае выглядит так:

program имя()

var

// здесь объявления переменных

begin

// здесь выполняемые инструкции

end.

Пример:

// пересчет веса из фунтов в килограммы

program p1()

var

fnt: float; // вес в фунтах

kg: float; // вес в килограммах

begin

write('Вес в фунтах >');

readln(fnt);

kg := fnt * 0.495; // 1 кг = 495 гр

writeln(fnt:6:2, ' фнт. = ', kg:6:3, 'кг');

writeln('Press <Enter>');

readln;

end.

Перед разделом var может быть раздел const (раздел именованных констант), в который программист может поместить объявления констант, используемых в программе.

// пересчет веса из фунтов в килограммы

program p1()

const

K = 0.495; // коэф. пересчета из фунтов в кг

var

fnt: float; // вес в фунтах

kg: float; // вес в килограммах

begin

write('Вес в фунтах >');

readln(fnt);

kg := fnt * K;

writeln(fnt:6:2, ' фнт. = ', kg:6:3, 'кг');

writeln('Press <Enter>');

readln;

end.

Типы данных

Pascal Next поддерживает целый, вещественный и строковый тип данных.

integer – целые числа в диапазоне -2 147 483 648 … 2 147 483 647

float – положительные и отрицательные вещественные числа в диапазоне от 1.5x10-38 до 3.4x1038

string – строка символов длинной до 128 символов

Переменные

Все переменные программы должны быть объявлены в разделе var той процедуры или функции, в которой они используются.

Инструкция объявления числовой переменной целого (integer) или вещественного (float) типа в общем случае выглядит так:

имя: тип;

Где:

имя – имя переменной;

тип – тип данных.

Примеры:

sum: float;

k: integer;

Допускается одной инструкцией объявить несколько переменных одинакового типа, например:

a,b,c: float;

Инструкция объявления строковой переменной в общем виде выглядит так:

имя: string[длина];

Где:

длина – максимальное количество символов, которое может вместить переменная.

Максимальное допустимое значение параметра длина при объявлении строки – 128.

Пример:

name: string[25];

Допускается одной инструкцией объявить несколько переменных одинакового типа, например:

firstName, lastName: string[12];

При объявлении строковой переменной можно использовать целую именованную константу.

Например, если в разделе const объявлена целая именованная константа LN, то объявление переменных firstName и lastName может быть таким:

firstName, lastName: string[LN];

Имя переменной

В качестве имени переменной (а также имени массива, процедуры или функции программиста) можно использовать любую, начинающуюся с латинской буквы и состоящую из латинских букв и цифр последовательность символов. Помимо букв и цифр имя переменной может содержать символы “подчеркивание”.

Примеры:

amount: integer;

x1: float;

month_salary: float;

annual_income: float;

first_name: string[20];

Компилятор Pascal Next не различает прописные и строчные буквы, т.е. нечувствителен к регистру записи идентификаторов, в том числе ключевых слов языка программирования. Таким образом, например, идентификаторы first_name, FIRST_NAME и First_Name обозначают один и тот же объект (переменную), а инструкцию выбора действия можно записать if, If или IF.

В качестве имен переменных (и других объектов программы) нельзя использовать зарезервированные слова языка программирования, а также имена встроенных процедур и функций.

Константы

Числовые константы записываются обычным образом.

Примеры целых констант:

123

–45

0

Примеры вещественных констант:

5.0

27542.15

25.7

–34.05

0.0

Строковая константа представляет собой заключенную в одинарные кавычки последовательность любых символов.

Примеры строковых констант:

'Hello, World!'

'Bart Simpson'

'(C) Nikita Kultin, 2023'

' '

''

'100'

'99.5'

Именованные константы

Именованные константы должны быть объявлены в разделе const программы, процедуры или функции, в которой они используются.

Объявление именованной константы выглядит так:

Имя = Значение;

Пример:

const

Copyright ='(c) Nikita Kultin, 2021'; // строковая именованная

PI = 3.1415925; // вещественная константа

HB = 7; // целая именованная константа

После объявления именованная константа может использоваться в программе как обычная константа, в том числе в разделе объявления переменных.

Пример использования именованных констант при объявлении переменных:

const

HB = 7;

NL = 25;

var

matrix array[1..HB,1..HB] of float;

students array[1..HB] of string[NL];

name: string[NL];

Пример использования именованных констант в коде:

sq := PI*r*r; // PI – именованная константа

for i:=1 to HB do // HB – именованная константа

for j:=1 to HB do

matrix[i,j]:=0;

end;

end;

Логический тип

В Pascal Next нет логического (boolean) типа данных, однако, его легко можно смоделировать, определив в программе целые именованные константы TRUE (истина) и FALSE (ложь) со значениями 1 и 0 соответственно. После этого, вместо переменных логического типа можно использовать переменные целого типа, трактуя их как логические.

Пример

program p()

const

// "логические" константы

TRUE = 1;

FALSE = 0;

HB = 10;

var

a:array[1..HB] of integer; // массив чисел

r: integer; // число, которое надо найти в массиве

found: integer; // признак, что число есть в массиве (найдено)

i: integer;

begin

for i:= 1 to HB do

a[i] := Random(HB);

end;

r:= Random(HB);

writeln('Search: ',r);

found := FALSE; // пусть число не найдено

i:= 1;

repeat

if a[i] = r then

found := TRUE; // число найдено

else

i:=i+1;

end;

until( found = TRUE) OR (i > HB);

if found = TRUE then

writeln('Found!');

else

writeln('Not found!');

end;

write('Press <Enter>');

readln;

end.

Рейтинг@Mail.ru