Pascal#
Astra Linux |
Pascal |
|---|---|
1.8 |
|
Предварительные шаги#
Перед тем как устанавливать любые пакеты проверим подключение репозиториев Astra Linux командой в консоли:
cat /etc/apt/sources.list
Для Astra Linux 1.8 список возможных репозиториев будет таким:
# Основной репозиторий
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/main-repository/ 1.8_x86-64 main contrib non-free non-free-firmware
# Расширенный репозиторий, включающий так же репозиторий для разработчиков
deb https://dl.astralinux.ru/astra/stable/1.8_x86-64/extended-repository/ 1.8_x86-64 main contrib non-free non-free-firmware
Подробнее о репозиториях можно прочесть в Репозитории и Организация репозиториев
После проверки необходимо обновить список доступных пакетов командой в консоли:
sudo apt update
Установка#
Для установки Free Pascal необходимо выполнить следующую команду в консоли:
sudo apt install fpc
Для установки IDE Lazarus (автоматически установятся пакеты с Free Pascal) необходимо выполнить следующие команды в консоли:
sudo apt install lazarus
Проверить версии установленных компиляторов можно следующей командой в консоли:
fpc -v
Пример консольного приложения на Pascal#
Создадим файл с расширением .pas и напишем следующие строки:
program LinuxConsoleApp;
{$mode objfpc}{$H+}
uses
SysUtils; // Для работы с StrToInt, IntToStr и другими функциями
// Функция проверки, является ли число простым
function IsPrime(n: Integer): Boolean;
var
i: Integer;
begin
if n <= 1 then
Exit(False);
for i := 2 to Trunc(Sqrt(n)) do
if n mod i = 0 then
Exit(False);
Result := True;
end;
// Процедура демонстрации работы с массивами
procedure ArrayDemo;
var
numbers: array of Integer;
i, sum: Integer;
begin
SetLength(numbers, 5);
Writeln('Введите 5 чисел:');
sum := 0;
for i := 0 to High(numbers) do
begin
Write('Число ', i+1, ': ');
Readln(numbers[i]);
sum := sum + numbers[i];
end;
Writeln('Среднее значение: ', (sum / Length(numbers)):0:2);
end;
// Основная программа
var
name: String;
age, i: Integer;
choice: Char;
begin
Writeln('Добро пожаловать в пример консольного приложения Free Pascal для Linux!');
Writeln('-----------------------------------------------------------');
// Ввод данных
Write('Пожалуйста, введите ваше имя: ');
Readln(name);
Write('Введите ваш возраст: ');
Readln(age);
// Вывод и условный оператор
Writeln;
Writeln('Привет, ', name, '!');
if age >= 18 then
Writeln('Вы уже взрослый!')
else
Writeln('Вы еще молоды!');
// Меню
repeat
Writeln;
Writeln('Меню:');
Writeln('1 - Проверить простые числа до 100');
Writeln('2 - Демонстрация работы с массивами');
Writeln('3 - Выход');
Write('Ваш выбор: ');
Readln(choice);
case choice of
'1':
begin
Writeln('Простые числа до 100:');
for i := 2 to 100 do
if IsPrime(i) then
Write(i, ' ');
Writeln;
end;
'2': ArrayDemo;
'3': Writeln('До свидания!');
else Writeln('Неверный выбор!');
end;
until choice = '3';
end.
Скомпилируем командой в консоли:
fpc <имя_файла>.pas
В том же каталоге появится файл <имя_файла> - это файл с исполнимым кодом, сразу становится исполняемым.
chmod +x <имя_файла>
Чтобы запустить запустим получившееся приложение:
./<имя_файла>
Разработка на Pascal#
Важно
Документация дорабатывается по мере развития продуктов Группы Астра и по пожеланиям пользователей.
Ваши пожелания и замечания направляйте на почту docs@astralinux.ru