Песни о Паскале
Шрифт:
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
{
Следующие
}
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 создана в стенах
Ознакомимся с некоторыми особенностями этой IDE.
При первом вызове IDE появляется пустое окно, в которое можно ввести текст программы и сохранить под нужным именем (рис. 181). Если открыть несколько файлов с программами, каждый из них будет помещен в отдельной вкладке.
Рис. 181 – Окно IDE Pascal ABCNet
Готовая программа запускается клавишей F9 или соответствующей кнопкой на панели инструментов.
Результаты, формируемые программой, выводятся в область консоли в нижней части окна (рис. 182). Здесь же расположено поле для ввода данных пользователем. Для завершения ввода нажимается клавиша Enter или кнопка «Ввести». Кнопкой «Завершить» выполнение программы прекращается досрочно, то же самое случится при нажатии комбинации Ctrl+F2.
Рис.182 – Протокол работы запущенной программы
Запуск программы в пошаговом режиме выполняется кнопками на панели инструментов, либо через меню. В пошаговом режиме доступен просмотр локальных переменных (рис. 183), а также другой информации о программе (на соседних вкладках).
Разработчики IDE Pascal ABCNet стремились, очевидно, к совместимости её со «стандартной» IDE Borland Pascal в той мере, насколько это возможно. Но объектная технология «точка Net» диктует своё, – полной совместимости не получилось.
Рис.183 – Просмотр переменных в пошаговом режиме
Так, например, в данной IDE не существует встроенной функции Assigned. Но вы можете написать её сами.
function Assigned (p: pointer): boolean;
begin
Assigned:= p <> nil
end;
Ниже перечислены другие особенности Pascal ABCNet, которые следует учесть при переделке примеров данной книги.
• Отсутствует процедура FillChar. Записи и массивы нужно заполнять явным образом.
• Нельзя назначать файловым переменным пустое имя, связывая их, таким образом, с экраном и клавиатурой.
• Под символ отводится не один, а два байта (используется UNICODE).
• Строки являются объектами, поэтому доступ к нулевому элементу (байту длины) невозможен.
Приложение Г
Зарезервированные слова
Ключевые слова, которые нельзя применять по иному назначению.