Название книги:

Pascal Next – руководство программиста. Описание языка программирования с примерами

Автор:
Никита Культин
Pascal Next – руководство программиста. Описание языка программирования с примерами

000

ОтложитьЧитал

Шрифт:
-100%+

© Никита Культин, 2023

ISBN 978-5-0059-6712-1

Создано в интеллектуальной издательской системе Ridero

Pascal Next

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

В основе синтаксиса языка Pascal Next лежит синтаксис «классического» Pascal.

Компилятор Pascal Next создает выполняемый Win32 файл.

• Среда разработки Pascal Next работает в операционных системах от Microsoft Windows XP до Microsoft Windows 10/11.

• Язык интерфейса среды разработки Pascal Next – русский (для русской локализации операционной системы) или английский (для остальных локализаций операционной системы).

• Сообщения компилятора об ошибках – на русском/английском языке.

• Встроенный справочник по языку программирования.

• Простой процесс установки – объем дистрибутива – 1,3 Мб, никакие дополнительные компоненты не нужны.

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 той процедуры или функции, в которой они используются.

Числовые

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

 
имятип;
 

Где:

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

тип – тип переменной.

Примеры:

 
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 обозначают один и тот же объект (переменную).

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

Константы

Целые

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

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

 
123
– 45
0
 

Вещественные

При записи вещественных констант в качестве десятичного разделителя следует использовать точку.

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

 
5.0
25.5
– 34.05
0.0
 

Строковые

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

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

 
́ Hello, World!́
́ Bart Simpsoń
́ (C) Nikita Kultin, 2021́
́ ́
́ ́
́ 100́
́ 99.5́
 

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

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

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

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

Где:

Имя – имя константы;

Значение – значение константы.

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

 
const
    Copyright =́ (c) Nikita Kultin, 2023́; // строковая  константа
    PI = 3.1415925; // вещественная именованная константа
    HB = 7; // целая именованная константа
    NL = 25; // целая именованная константа
 

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

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

 
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;
 
 
    write (́ Number list: ́);
    for i:= 1 to HB-1 do
        a [i]:= Random (HB);
        write (a [i]:3,́,́);
    end;
    write (a [HB]:3);
 
 
    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.
 

Вывод в окно консоли

Вывод информации на экран (в окно консоли) выполняют инструкции write и writeln.

 

В общем виде инструкции вывода информации в окно консоли записываются так:

 
write (список_вывода);
writeln (список_вывода);
 

где:

список_вывода – разделенные запятыми имена переменных, строковые константы или выражения.

Примеры:

 
write (sum);
write (́ Press <Enter> ́);
writeln (́ x1=́, x1, ́ x2=́, x2);
writeln (pound,́ фунтов =́, pound*0.453, ́ кг.́);
 

Форматированный вывод

В строке вывода после имени переменной или выражения через двоеточие можно задать формат вывода значения.

Для целых и строковых значений формат задает ширину поля вывода – количество позиций на экране, которое резервируется для вывода значения переменной.

В общем виде форматированный вывод целых и строковых значений задается так:

 
имя: n
 

где:

имя – имя переменной, значение которой надо вывести на экран;

n – ширина поля вывода (целая константа).

Форматированный вывод вещественных значений в общем виде задается так:

 
имя: n:m
 

где:

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

n – ширина поля вывода (целая константа);

m – количество цифр дробной части (целая константа).

Примеры:

 
// переменные x1 и x2 – вещественного типа
writeln (́ x1=́, x1:9:3, ́ x2=́, x2:9:3);
 
 
// переменная name строковая, salary – вещественная
writeln (name:15, salary:12:3);
 
 
// выражение pound*0.453 вещественного типа
writeln (pound:5:2,́ фунтов =́, pound*0.453:6:3, ́ кг.́);
 

Ввод данных с клавиатуры

Ввод данных с клавиатуры обеспечивает инструкция readln, которая в общем виде записывается так:

 
readln (имя);
 

где:

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

Примеры:

 
readln (name);
readln (salary);
 

ВНИМАНИЕ! При вводе вещественных значений в качестве десятичного разделителя следует использовать точку. Если при вводе вещественного значения вместо точки будет введена запятая, ошибка ввода (исключение) не возникает, но дробная часть будет отброшена.


Издательство:
Издательские решения