Песни о Паскале — страница 106 из 112

Создайте где-нибудь папку для хранения файлов русификатора, например, «D:\Lang\BP\Rus». Скопируйте в неё файл «RK.COM» (или «RK-866.COM»), а также два файла из системной папки «C:\Windows\System32»: файл конфигурации «CONFIG.NT» и файл автозапуска «AUTOEXEC.NT».

В конце вашей копии файла «AUTOEXEC.NT» добавьте строку


LH d:\Apps\Lang\BP\Rus\Rk.com /R5

или

LH d:\Apps\Lang\BP\Rus\Rk–866.com /R5


Теперь настройте запускающий IDE ярлык: щелкните по нему правой кнопкой мыши и выберите пункт «Свойства». На вкладке «Программа» щелкните по кнопке «Дополнительно» (рис. 169).



Рис.169 – Настройка ярлыка для русификации консольного окна

Появится показанное ниже окно для ввода имен системных файлов «CONFIG.NT» и «AUTOEXEC.NT».



Рис.170 – Указание пути к файлам настройки MS–DOS

Здесь, вместо файлов, предложенных по умолчанию, укажите файлы из вашей папки с русификатором (рис. 170), например:


D:\Lang\BP\Rus\Config.nt

D:\Lang\BP\Rus\Autoexec.nt


Кнопка OK завершит дело. К сожалению, этот вариант русификации действует только на данный ярлык. При запуске других программ MS-DOS русификатор не сработает, – для них надо создавать и настраивать свои ярлыки.

И последнее. При запуске IDE с русификатором в Windows XP иногда появляется сообщение о сбое (рис. 171).



Рис.171 – Сообщение о сбое

Нажмите здесь кнопку «Пропустить», пренебрегая этим сообщением.

Turbo Pascal School Pak

Итак, кропотливая работа по настройке IDE завершена. Но эту работу можно сделать проще и быстрее, если воспользоваться школьным пакетом «Turbo Pascal School Pak», который легко найти в Интернете.

Чем хорош этот продукт? Вот главные его прелести:

• включает в себя предустановленную IDE Borland Pascal;

• весь интерфейс и справочная система – на русском;

• не требует русификации консольного окна;

• крайне прост в установке и работает в последних версиях Windows.

Turbo Pascal School Pak работает на так называемой виртуальной машине DOSBox (входит в состав пакета) – она эмулирует MS-DOS. В комплект входит и ряд дополнительных программ, включая Norton Commander.

Вот ещё одна особенность DOSBox: после щелчка в её окне мышь будет захвачена виртуальной машиной и не покинет это окно, пока вы не нажмете комбинацию Alt+F11.

Приложение БКонсольная программа в среде Delphi

Программы, рассмотренные в этой книге, могут создаваться в среде Delphi в качестве консольных приложений. Здесь изложен порядок создания, настройки и русификации консольного приложения.

Создание пустого консольного приложения

При входе в среду программирования Borland Delphi автоматически создается пустое оконное приложение с именем Project1, – нам оно не нужно. Для создания консольного приложения поступайте так:

1) Выберите пункт меню File –> New –> Other… (рис. 172).



Рис. 172 – Пункт меню File –> New –> Other…

2) В открывшемся окне выберите вкладку «New», а в ней – тип приложения «Console Application», затем нажмите кнопку OK (рис. 173).



Рис.173 – Окно выбора типа приложения

В результате на экране появится окно с заготовкой будущей программы.


program Project1;

{$APPTYPE CONSOLE}

uses SysUtils;

begin

{ TODO User Console Main : Insert code here }

end.


В первой строке указано имя проекта Project1, затем директива CONSOLE, определяющая тип приложения, а в третьей строке – список подключаемых модулей USES. Комментарий, стоящий между ключевыми словами BEGIN и END, отмечает место, где будет располагаться главная программа, этот комментарий можно удалить.

Настройка и сохранение консольного приложения

Перед сохранением пустого консольного приложения настройте опции компилятора следующим образом:

1) Выберите пункт меню Project –> Options… (рис. 174).



Рис.174 – Выбор пункта меню Project –> Options…

2) В открывшемся диалоге выберите вкладку «Compiler» и установите опции компилятора так, как показано на рис. 175. Эта настройка обеспечит совместимость с компилятором Borland Pascal. Перед нажатием кнопки OK установите флажок «Default», и тогда последующие проекты будут создаваться с этими же опциями.



Рис.175 – Окно настройки опций проекта, вкладка Compiler

3) Для сохранения приложения обратитесь к пункту меню File –> Save или File –> Save Project As… (рис. 176)



Рис.176 – Выбор пункта меню для сохранения проекта

В открывшемся диалоге найдите нужную рабочую папку и укажите имя сохраняемого файла. Файлу проекта автоматически назначается расширение DPR (а не PAS, как в Borland Pascal).

Внимание! При сохранении файла проекту автоматически назначается имя этого файла (имя проекта указано после ключевого слова Program). Здесь вступают в силу ограничения на идентификаторы, действующие в Паскале. Имя файла должно начинаться с латинской буквы, состоять из латинских букв, цифр и знаков подчеркивания. Например, после сохранения проекта под именем My_Prj_1 окно с заготовкой программы станет таким.


program My_Prj_1;

{$APPTYPE CONSOLE}

uses SysUtils;

begin

{ TODO User Console Main : Insert code here }

end.


С этого момента приступайте к вводу своей программы. Компиляция и запуск консольного приложения выполняются клавишей F9.

Русификация консольного приложения

Консольные приложения Delphi работают почти так же, как созданные в Borland (Free) Pascal. Но есть проблема с выводом русского текста на экран (именно на экран, а не в тестовый файл!). Запустив следующую программу, вместо русского приветствия вы увидите «абракадабру».


program My_Prj_1;

{$APPTYPE CONSOLE}

uses SysUtils;

begin

      Writeln('Hello, World!');

      Writeln('Привет, Мартышка!');

      Readln;

end.


Причина – в несоответствии кодировок консольного окна и текстового файла.

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


SetConsoleCP(1251);

SetConsoleOutputCP(1251);

Процедуры спрятаны в модуле Windows, поэтому вам придется добавить его в список Uses. Пример такой программы представлен ниже.


program Rus;

{$APPTYPE CONSOLE}

uses SysUtils, Windows;

begin

{

Следующие вызовы процедур переключают консоль на кодовую страницу CP1251 (Win-1251). Если все же русские буквы показываются неверно, откройте системное меню консоли (в левом верхнем углу окна) и выберите: Свойства -> закладка "Шрифт" -> Lucida Console.

}

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

Writeln('Привет, Мартышка! (Lucida Console CP1251)');

Readln;

end.

Впрочем, при первом запуске и это не приведет к успеху (рис. 177).



Рис.177 – Вид консольного окна при первом запуске программы

Вам следует настроить шрифт консольного окна, выполнив следующие действия.

Щелкните системное меню консольного окна и выберите пункт «Свойства» (рис. 178).



Рис.178 – Выбор пункта меню «Свойства»

В появившемся окне выберите вкладку «Шрифт», а затем шрифт «Lucida Console» (рис. 179 слева). После нажатия кнопки ОК появится запрос, где можно подтвердить выбор шрифта для всех консольных окон (рис. 179 справа).



Рис.179 – Вкладка «Шрифт» (слева) и окно подтверждения (справа)

Результат настройки не заставит себя ждать (рис. 180).



Рис.180 – Русский текст в консольном окне

Приложение ВОсобенности IDE Pascal ABCNet

Интегрированная среда разработки Pascal ABCNet пригодна для решения многих задач из этой книги. Я рекомендую её новичкам, делающим первые шаги в изучении Паскаля. Эта IDE проста в установке, не требует настройки, и отличается удобным русскоязычным оконным интерфейсом. IDE Pascal ABCNet создана в стенах Южного федерального университета, её можно бесплатно скачать с сайта http://pascalabc.net.

Ознакомимся с некоторыми особенностями этой IDE.

При первом вызове IDE появляется пустое окно, в которое можно ввести текст программы и сохранить под нужным именем (рис. 181). Если открыть несколько файлов с программами, каждый из них будет помещен в отдельной вкладке.



Рис. 181 – Окно IDE Pascal ABCNet

Готовая программа запускается клавишей F9 или соответствующей кнопкой на панели инструментов.

Результаты, формируемые программой, выводятся в область консоли в нижней части окна (рис. 182). Здесь же расположено поле для ввода данных пользователем. Для завершения ввода нажимается клавиша Enter или кнопка «Ввести». Кнопкой «Завершить» выполнение программы прекращается досрочно, то же самое случится при нажатии комбинации Ctrl+F2.