355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Олег Деревенец » Песни о Паскале (СИ) » Текст книги (страница 2)
Песни о Паскале (СИ)
  • Текст добавлен: 6 ноября 2017, 03:30

Текст книги "Песни о Паскале (СИ)"


Автор книги: Олег Деревенец


Жанр:

   

Драматургия


сообщить о нарушении

Текущая страница: 2 (всего у книги 29 страниц)

Впрочем, консольные операционные системы не исключают развитых оконных интерфейсов. Напомню, что оконные «коммандеры» и «навигаторы» появились в консольной MS–DOS. Со временем и вы научитесь создавать оконные программы.

Прикосновение к консольному интерфейсу

Теперь испытаем консольный интерфейс «на ощупь», обратившись к консольному интерфейсу вашей операционной системы. Однако ж, где найти его среди многочисленных окон? Воспользуйтесь пунктом главного меню, который в ранних версиях Windows назывался «Сеанс MS–DOS», а в более поздних – «Командная строка». Итак, для вызова окна консоли обратитесь в главное меню Windows:

Пуск –> Программы –> Стандартные –> Командная строка

или

Пуск –> Программы –> Стандартные –> Сеанс MS-DOS

Щелчок на этом пункте вызовет окно, похожее на это (рис. 3).


Рис.3 – Окно командной строки (консольное окно)

Здесь выведено название текущей папки с угловой скобкой в конце. Эта строка с «уголком» называется строкой приглашения. Курсор, мигающий после угловой скобки, предлагает вам ввести какую либо из команд операционной системы. Таких команд насчитывается несколько десятков, их полное описание можно найти в справке по Windows. Сейчас испытаем три из них: DIR – распечатка каталога, CLS – очистка экрана, и EXIT – выход из окна консоли.

Напечатайте с позиции курсора слово DIR (большими или маленькими буквами – не важно) и нажмите клавишу Enter. Эта команда заставит систему распечатать информацию о файлах текущей папки. На моем компьютере я увидел вот что (рис. 4).


Рис.4 – Распечатка содержимого текущей папки командой DIR

Выполнив команду, операционная система снова выводит «уголок», приглашая напечатать следующую команду. При желании повторите команду DIR ещё пару раз. А теперь введите команду CLS (очистка экрана), – в результате окно консоли очистится, и будет видна лишь строка приглашения. Наконец подача команды EXIT (выход) закроет консольное окно, и на этом сеанс завершится.

В прежних системах консольное окно можно было переключать в полноэкранный режим, и тогда оно занимало весь экран, а рабочий стол Windows исчезал. Это колдовство срабатывало при нажатии комбинации клавиш Alt+Enter, эта же комбинация возвращала экран в привычный оконный вид Windows. Но, в новейших на этот момент системах (Vista, Windows–7) полноэкранный режим уже не предусмотрен.

Командами консольного интерфейса можно выполнить всё то, что мы делаем через окна: создавать, копировать, удалять и переименовывать файлы, создавать каталоги и т.д. Вот ещё несколько команд, испытайте их:

VER – вывод версии операционной системы;

TREE – распечатка дерева каталогов;

HELP – вывод списка всех команд операционной системы.

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

А почему не «окна»?

Читатели, наслышанные о таких мощных визуальных средах программирования как Delphi и Lazarus, обязательно спросят: почему бы нам не воспользоваться этими инструментами? Ведь создавать красивые оконные приложения в том же Delphi очень интересно и не так уж сложно!

Да, творить окошки с кнопочками в IDE Delphi на первый взгляд просто. Но эта простота скрывает непостижимые для новичка механизмы событийного и объектного программирования. А мы ведь договорились не прыгать по верхушкам, – оставим это развлечение «чайникам». Это первое.

Открою и второй умысел. Рассмотренный нами консольный интерфейс годен для ввода и вывода данных не только на экран, но и в текстовые файлы. Профессионал обязательно соприкоснётся с такими файлами, а вы ведь будущий профессионал, не так ли? К тому же, с текстовыми файлами имеют дело и участники школьных олимпиад, в которых вы наверняка пожелаете сразиться.

Итоги

• Интерфейс – это механизм слаженного взаимодействия технических систем, например, двух компьютеров, либо человека и компьютера.

• Консольный интерфейс или интерфейс командной строки – это простой и надежный механизм, используемый для общения человека с компьютером. Он применялся в ранних поколениях ЭВМ, и жив по сей день.

Глава 4

Оружие – к бою!

Скоро вы напишете свою первую программу, и для этого заточим наше оружие, наш рабочий инструмент – интегрированную среду разработки (IDE). Тогда, подобно воину, вы сможете вмиг обнажать меч двойным щелчком мыши.

Оружейный прилавок

Напомню, что IDE – это мощная программа, объединяющая редактор текста, компилятор, отладчик и справочную систему. Для программирования на Паскале создано несколько таких IDE, рассмотрим кратко наиболее известные из них, а именно:

• Borland Pascal 7.0 (7.1);

• Free Pascal;

• Delphi;

• Pascal ABCNet.

Годятся ли эти IDE для обучения новичка? Каковы их особенности? Не нарушаем ли мы авторских прав? И что выбрать? Рассмотрим их в исторической последовательности.

Borland Pascal – первая среда такого рода, разработанная фирмой Borland ещё в эпоху консольной операционной системы MS–DOS. Последним версиям IDE присвоены номера 7.0 и 7.1. Изделие вышло удобным и надежным, и задало фактический стандарт в данной области (признаюсь, и поныне это мой любимый компилятор).

Delphi – новое детище фирмы Borland, сменившее покинутый ею Borland Pascal. Визуальное программирование – вот главная изюминка этого продукта. Даже не слишком умудренный программист соорудит с помощью Delphi вполне приличные оконные программы.

Free Pascal. Как ни хороши изделия фирмы Borland, их применение ограничено в смысле авторских прав. Потому энтузиасты Паскаля создали свободно распространяемую IDE, очень похожую на Borland Pascal. Проект Free Pascal развивается, и во многом он ушел дальше своего предшественника, конкурируя с Delphi. К настоящему времени выпущены версии для нескольких платформ и операционных систем.

Pascal ABCNet – эта остроумная, удобная и бесплатная IDE создана энтузиастами Южного федерального университета на основе технологии «точка Net», продвигаемой фирмой Microsoft. Буквочки «ABC» намекают на «азбучное», то есть образовательное направление проекта.

Подытожим наш краткий обзор и сделаем выбор. Новичкам будет удобно в среде Pascal ABCNet. Однако её основа – технология «.Net» – не отвечает требованиям школьных олимпиад по информатике (а многие захотят поучаствовать в них). Этим требованиям удовлетворяют другие IDE, которая из них лучше? Визуальная среда Delphi избыточна и сложна для начинающих. Borland Pascal подкупает своей надежностью, но эта IDE слегка устарела. К тому же упомянутые продукты фирмы Borland не бесплатны. Что нам остается? Free Pascal? – выберем его своим основным «оружием».

Но и приверженцев других инструментов я не брошу на произвол судьбы. Примеры из этой книги не привязаны к какой-либо версии языка и сработают в любой из рассмотренных IDE (кроме разве что ABCNet, где часть примеров требует переработки). С установкой, настройкой и особенностями работы в этих средах программирования можно ознакомиться в следующих приложениях:

• Приложение А – Borland Pascal;

• Приложение Б – Delphi;

• Приложение В – Pascal ABCNet.

Установка IDE Free Pascal

Приступим к установке и настройке приглянувшейся нам IDE Free Pascal. Прежде всего, раздобудем её дистрибутив. Если вам доступен Интернет, войдите на сайт www.freepascal.org. Переключившись на страницу «Downloads», можно скачать дистрибутивы под любую аппаратно-программную платформу. Установочный файл для компьютеров на базе процессоров Intel с операционной системой Windows доступен по ссылке

www.freepascal.org/down/i386/win32.var

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

fpc–2.6.0.i386-win32.exe

Запустив его, и ответив на несколько несложных вопросов установщика, вы получите желаемый результат. Затрудняясь с выбором ответов, оставляйте то, что предложено по умолчанию. Тогда полный комплект IDE установится в папку «C:FPC2.6.0» (для версии 2.6.0), а на рабочем столе появится ярлык для запуска IDE. Если ярлык не появится, создайте его вручную на файл

c:fpc2.6.0bini386-win32fp.exe

Настройка ярлыка

Прежде, чем «дергать» за ярлык, настроим его, указав рабочую папку и параметры шрифта. Что такое рабочая папка? Это папка, где мы будем хранить свои программы, а их будет немало. Негоже сорить файлами по всему диску: ведь найти их будет трудно, а удалить по неосторожности – легко. Создайте для своих программ папку в подходящем месте. Я, к примеру, создал её со следующим путем:

C:UserPascal

Теперь в ярлыке, запускающем IDE, укажем путь к этой рабочей папке. Щелкните по ярлыку правой кнопкой мыши и в контекстном меню выберите пункт «Свойства». В открывшемся окне свойств щелкните на вкладке «Ярлык», и в поле «Рабочая папка» вместо пути, указанного по умолчанию, впечатайте путь к своей рабочей папке (рис. 5 слева).


Рис.5 – Окно свойств ярлыка

Затем переключитесь на вкладку «Шрифт» (рис. 5 справа) и задайте достаточно крупный размер шрифта, – пощадите свои глаза! В завершение нажмите кнопку OK.

Первый запуск и настройка IDE Free Pascal

Теперь смело «дергайте» за ярлык. При каждом своем запуске IDE ищет в рабочей папке файл с текущей конфигурацией. Поскольку при первом запуске такого файла ещё нет, вам будет задан вопрос о его создании (рис. 6).


Рис.6 – Вопрос с предложением создать новый конфигурационный файл

Дайте утвердительный ответ Yes, после чего IDE создаст в вашей рабочей папке файл «FP.CFG». В дальнейшем, когда вы будете менять настройки IDE, они будут автоматически сохраняться в этом файле.

Сейчас, например, мы укажем размеры окна IDE, выбрав один из предлагаемых вариантов. В окне IDE, обратитесь к пункту меню Options –> Environment –> Preferences (рис. 7)


Рис.7 – Пункт меню для настройки предпочтений

Появится окно для настройки предпочтений пользователя (рис. 8). Здесь в поле «Video mode» предлагается один из трех видеорежимов. Так, режим «80x25 color» соответствует стандартному дисплею в текстовом режиме, но для работы удобней будет задать 30 строк или более. Остальные опции оставьте такими, как показано на рис. 8. После нажатия кнопки OK ваши предпочтения будут сохранены в конфигурационном файле.


Рис.8 – Окно для указания предпочтений пользователя

Пустое окно IDE Free Pascal примет вид, показанный на рис. 9. Буквы «FPC» на заставке означают «Free Pascal Compiler» – свободный компилятор с языка Паскаль.


Рис. 9 – Пустое окно IDE Free Pascal

На этом установка IDE завершена, и можно приступать к первой программе. Правда, для полного счастья не хватает справочной системы. Впрочем, на первых порах она не нужна, а когда вас одолеет желание поупражняться в чтении английских статей, вернитесь к установке справочной системы.

Установка справочной системы

Справочная система скачивается отдельно от установщика, на момент написания этих строк работают следующие ссылки:

http://freepascal.org/docs.var – файл в формате PDF;

http://freepascal.org/down/docs/docs.var – файлы в форматах HTML и CHM.

Примечание. Со временем эти ссылки могут устареть, в таком случае начинайте поиск документации с корневой ссылки http://freepascal.org.

Скачав файл «doc-html.zip», распакуйте его в любое удобное место. Рекомендую создать для этого папку с именем «HELP» в той директории, где установлена IDE Free Pascal, – распакуйте zip–архив туда. Стартовый файл для открытия справки называется «fpctoc.html», он открывается любым браузером Интернета.

Эту же справочную систему можно встроить и внутрь IDE Free Pascal, выполнив следующие шаги.

Запустите IDE и активизируйте пункт меню Help –> Files… (рис. 10).


Рис.10 – Пункт меню для настройки справочной системы

Появится окно для добавления файла справочной системы (рис. 11).


Рис.11 – Окно для вставки файла справочной системы

Щелкните по кнопке New и откройте файл «fpctoc.html», – здесь IDE запросит подтверждение на создание индексного файла. Дайте положительный ответ и подождите несколько минут, пока буден создан индексный файл «fpctoc.htx». Если же файл «fpctoc.htx» уже был создан ранее, откройте сразу его (рис. 12).


Рис.12 – Указание файла справочной системы

Так или иначе, справочный файл появится в списке установленных, и вам останется лишь нажать кнопку OK. С этого момента вы сможете открывать справочную систему как отдельно (посредством файла «fpctoc.html»), так и внутри IDE Free Pascal клавишами F1 и Ctrl+F1.

Обновление версий Free Pascal

В случае скачки и установки очередной версии Free Pascal вам придётся заново настроить ярлык, а также удалить из рабочей директории старые версии файлов «fp.cfg» и «fp.dsk».

Итоги

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

• С учетом ряда соображений, основной средой программирования мы выбрали IDE Free Pascal. Однако примеры из данной книги годятся почти для любой из упомянутых IDE.

• Для установки IDE Free Pascal нужен установочный файл (дистрибутив) и архив справочной системы.

• Создаваемые программы разумно хранить в отдельной рабочей папке, которую надо указать в свойствах ярлыка, запускающего IDE Free Pascal.

Глава 5

Программа номер один


Постановка задачи

Отныне мы будем повелевать компьютером, а он – исполнять наши капризы. Чем бы таким озадачить его? Ответ на подобный вопрос программисты называют постановкой задачи. Никто из них и пальцем не шевельнет, не прояснив суть предстоящей работы. Пусть наша первая программа выведет на экран слово «Привет!», – славно, когда тебя приветствует собственный компьютер!

Создание файла

Запустите IDE Free Pascal, – воспользуйтесь для этого ярлычком, который мы настроили в предыдущей главе. Затем создайте новый файл, выбрав пункт меню File –> New (рис. 13). В области редактора появится пустое окно с заголовком «NONAME00.PAS», – это так называемый безымянный файл; две цифры в конце имени (00, 01, 02 и т.д.) помогают различать такие файлы.


Рис.13 – Пункт меню для создания нового файла

Сохраните пока ещё пустой файл в своей рабочей папке, у меня это папка «C:UserPascal». При сохранении файлу надо придумать подходящее имя. Здесь ваша фантазия ограничена лишь требованиями к именам файлов. Пока вы учитесь, придерживайтесь правил, принятых в MS–DOS: имя файла должно содержать не более восьми символов, не считая расширения имени PAS. В имени используйте только латинские буквы, цифры и знак подчеркивания (пробелы и русские буквы я запрещаю!).

Из этих «кирпичиков» можно составить миллионы имен, – и запутаться в них! Но мы избежим хаоса, применив некоторую систему. Пусть в имени файла содержится номер главы, где была создана программа. Тогда по имени файла вы найдете надлежащую главу, а по номеру главы – файл.

Итак, имя файла начнем с латинской буквы «P» (от слова «Pascal»), далее последуют две цифры с номером главы и одна цифра – с порядковым номером программы в этой главе. Элементы имени разделим знаками подчеркивания, и тогда для 1-й программы 5-й главы файл получит имя «P_05_1.PAS».

Сохраним его под этим именем. Нажмите клавишу F2, – на экране появится диалоговое окно (рис. 14). В верхней строке напечатайте имя файла, а расширение PAS можете не печатать, – оно будет добавлено автоматически. После нажатия клавиши Enter или кнопки OK файл будет сохранен в рабочей папке, и в заголовке окна появится его новое имя «P_05_1.PAS».


Рис.14 – Диалог сохранения файла

Наполнение файла

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

begin

end.

Возможно, вам известен их перевод: BEGIN – «начало», а END – «конец». Зачем они тут? При переводе программы с «человеческого» языка на язык процессора компилятор должен видеть границы программы. Слова BEGIN и END для того и предназначены, их называют ключевыми. Паскаль содержит десятки ключевых слов, они перечислены мною в приложении Г. Ключевые слова служат поводырями для компилятора, помогая ему разбираться в программе. Эти слова запрещено использовать по иному назначению!

Итак, слова BEGIN и END указывают компилятору начало и конец программы. Пару BEGIN–END применяют и в иных случаях, как скобки в математике. То есть, после слова BEGIN где-то далее в программе обязательно следует слово END. Но слово END используют и для завершения некоторых других конструкций языка, о которых вы узнаете позже.

Ключевые слова можно печатать и маленькими (строчными) и большими (заглавными) буквами, например: Begin, BEGIN, begiN, – это дело вкуса. То же относится к другим «волшебным» словам языка, о которых вы узнаете позже. Важно помнить, что в этих словах разрешены только латинские буквы. Будьте внимательны: некоторые латинские буквы по начертанию совпадают с русскими («А», «Е», «О»), но для компилятора эти буквы разные, и он обязательно заметит подмену!

Теперь взгляните на точку после слова END, – она отмечает конец программы. Без нее нельзя, иначе компилятор попытается читать текст после слова END, и, не найдя ничего, сообщит об ошибке.

Итак, напечатав эти две строки с точкой в конце, нажмите ещё раз клавишу F2 для сохранения файла. Поскольку ранее мы уже дали имя файлу, IDE сохранит его под этим именем, не докучая лишними вопросами.

Примечание. В начале программы иногда пишут необязательное ключевое слово PROGRAM, после которого указывают имя программы. Это имя должно совпадать с именем файла без расширения, например:

program P_05_1;

begin

end.

В наших примерах я не буду вставлять это необязательное ключевое слово.

Теперь поздравьте себя, – вы написали первую программу! И пусть она ещё ни на что не годна, зато синтаксически правильна, – так полагает компилятор. А это важно, – ведь теперь можно создать исполняемый файл, надо лишь откомпилировать этот текст! Раз так, дадим слово компилятору.

Компиляция

А где тут компилятор? Куда спрятался? Не ищите, для создания исполняемого EXE–файла просто нажмите клавишу F9. Если две строчки программы были напечатаны верно, появится сообщение об успешной компиляции (рис. 15).


Рис.15 – Сообщение об успешной компиляции

Закройте окно нажатием любой клавиши, или щелчком по иконке в верхнем левом углу. Заглянув теперь в свою рабочую папку, вы обнаружите там наряду с файлом «P_05_1.PAS» ещё и файл «P_05_1.EXE».

Запустите на выполнение новорожденный EXE–файл и поделитесь своим наблюдением. Зоркий охотник заметит лишь мелькнувшее консольное окно. Чем это объяснить? Запуская консольную программу (именно такую мы сейчас сотворили), Windows создаёт для нее консольное окно, а по завершении программы закрывает его. Поскольку наша программа пока ещё пуста и завершается, ничегошеньки не сделав, консольное окно вмиг исчезает.

Процедура вывода (печати)

Вернемся в IDE и продолжим наполнять нашу программу с тем, чтобы напечатать на экране приветствие. Вообще-то печатать можно только на бумаге, а на экране – высвечивать. Но, со времен пишущих машинок – консолей – слово «печатать» настолько укоренилось, что вывод на экран или файл я иногда буду называть «печатью».

Итак, для вывода приветствия добавим между ключевыми словами BEGIN и END ещё одну строчку, вот она.

Writeln(’Привет!’)

Разберем строку «по косточкам». Прежде всего, мы видим слово Writeln. Это сокращение из двух слов: Write – «записывать», и Line – «линия, строка», что вместе значит «написать строку». Слово Writeln в Паскале не ключевое – это имя процедуры. В отличие от ключевых слов – поводырей для компилятора, – процедуры определяют выполняемые программой действия. На пути к вершинам Паскаля мы встретим немало ключевых слов и процедур, и всякий раз я буду объяснять, где что.

Вернемся к процедуре Writeln, которая дает указание напечатать что-либо на экране. Но, что именно? Ответ находится внутри круглых скобок, где содержатся параметры процедуры. В этих скобках мы видим слово «Привет!», заключенное в апострофы (иногда их называют одинарными кавычками). В Паскале строку, заключенную в апострофы, называют строковой константой. Вот несколько примеров строковых констант.

’Привет, Мартышка!’

’– Free Pascal –’

’Я понял, что такое строковая константа!’

Как видите, любой текст обращается в строковую константу, если заключить его в апострофы. Внутри такой константы компилятор не различает ни ключевых слов, ни процедур, а воспринимает строку «как есть». Длина применяемых нами строк будет ограничена 255 знаками, включая пробелы. А вот примеры «незаконных», ошибочных строковых констант:

Нет первого апострофа’

’Нет последнего апострофа

’Апостроф ’ внутри строки’

Совсем без апострофов

А когда надо вставить апостроф внутрь строки? Тогда ставят два апострофа подряд, например:

’Один апостроф ’’ внутри строки’

И, хотя в середине строки поставлены два апострофа, компилятор учтет только один из них, – такая вот хитрость!

Теперь, с оператором печати, наша программа выглядит следующим образом:

begin

Writeln(’Привет!’)

end.

Постарайтесь ввести её без ошибок, ведь вы пока не умеете бороться с ними. Готово? Тогда сохраните файл нажатием F2 и скомпилируйте нажатием F9. Если все нормально, появится знакомое окно успешной компиляции. В противном случае найдите ошибку, исправьте её и повторите компиляцию.

Запуск программы

Теперь мы создали новую версию файла «P_05_1.EXE», запустите его, пожалуйста. Что увидели? Опять мелькнувшее окно? Причина все та же: операционная система быстренько закрыла консольное окно, поскольку программа завершилась сразу после вывода сообщения, – вы просто не успели его разглядеть! Скоро мы найдем способ притормозить программу, но ждать нам недосуг, – не терпится посмотреть результат! И я покажу, как его увидеть.

Готовую программу мы запустим, не покидая IDE, – нажатием сочетания клавиш Ctrl+F9. Нажали? И что, опять ничего?! Спокойно, сейчас разберемся. Дело в том, что IDE закрывает собою всю площадь консольного окна, пряча то, что вывела в это окно наша программа. Чтобы увидеть результат, надо временно убрать IDE нажатием комбинации клавиш Alt+F5. Сделайте так, и тогда вам явится долгожданная картинка (рис. 16).


Рис. 16 – Вид консольного окна после скрытия IDE

Первые строки содержат служебное сообщение о запуске IDE Free Pascal, – не смотрите туда. Нам важна последняя строка, где мы видим долгожданный «Привет!». Полюбовавшись на него, вернитесь в IDE, для чего нажмите любую клавишу. Хотите повторить удовольствие? Так запустите программу ещё пару раз (Ctrl+F9) и полюбуйтесь на результат (Alt+F5).

Итоги

• Создание программы начинается с подготовки текстового файла.

• Программа на Паскале содержит, по меньшей мере, одну пару ключевых слов Begin – End с точкой в конце. Между этими ключевыми словами помещают операторы, выполняющие нужные действия.

• Вывод информации на экран выполняется процедурой Writeln с параметрами внутри круглых скобок; таким параметром может быть строковая константа.

• Строковая константа – это последовательность символов, заключенная в апострофы. Наши строки будут содержать не более 255 символов.

• Для создания исполняемого EXE-файла вызывают компилятор, это делается нажатием клавиши F9. Если программа не содержит синтаксических ошибок, компилятор создаст исполняемый файл и сообщит об успешной компиляции, а иначе доложит об ошибке.

• Запустить исполняемый файл можно непосредственно в IDE. Для этого следует нажать сочетание клавиш Ctrl+F9.

• Для просмотра выводимых на экран результатов (временного скрытия IDE) нажимают комбинацию клавиш Alt+F5, а для восстановления IDE – любую клавишу.

А слабо?

Начиная с этой главы и далее, я буду предлагать вам каверзные вопросы и задачки. Некоторые из них решаются в уме, другие – на компьютере. Если вы справитесь с большинством задач, спите спокойно – ваша совесть чиста, а голова не пуста. Вот вам первые задания.

А) Найдите ошибки в следующей программе.

begn

Writeln(ПрЫветик!)

end

Сначала проделайте это в уме, а затем на компьютере. Объясните, почему компилятор не нашел ошибки в слове «ПрЫветик». Или слабо?

Б) Будет ли работать следующая программа?

begin Writeln(’Begin End.’) end.

В) Попытайтесь написать программу, выводящую на экран не одну, а две строки, например:

Без труда

Не выловишь калошу из пруда

Здесь нужны две процедуры печати, следующие друг за другом. Подсказка: между процедурами требуется специальный разделитель – точка с запятой (;).

Глава 6

Подготовка к следующему штурму

Перед штурмом следующей крепости подтянем «тылы» и укрепимся на завоеванной позиции.

Ещё об исходных файлах

Работая над первой программой, мы создали и сохранили исходный файл с расширением PAS. Если вам потребуется вновь обратиться к нему, достаточно будет нажать клавишу F3, и тогда появится окно открытия файла (рис. 17).


Рис. 17 – Окно открытия файла

В верхней части расположено поле для ввода имени открываемого файла. В центре – список файлов текущей папки (файлов с расширением PAS), а путь к этой папке виден в нижней части окна. Щелкнув мышкой по имени файла, вы переместите его в поле ввода. Теперь достаточно щелкнуть на кнопке Open, или нажать клавишу Enter, и файл откроется в окне редактора. Так последовательно можно открыть несколько файлов.

Открытие файла – дело нехитрое, но лучше, если в следующий раз вам не придется вспоминать о файлах, с которыми вы работали в предыдущем сеансе. Для этого при выходе из IDE не закрывайте окна, и тогда при повторном запуске IDE автоматически откроет эти файлы.

Управление окном редактора

Тем, кто привык управляться с окнами Windows, обращаться с окнами IDE Free Pascal понравится ничуть не меньше. Взгляните на рис. 18, где представлены средства управления окном.


Рис. 18 – Средства управления окном редактора

Иконка в правом верхнем углу распахивает окно на весь экран или вновь сворачивает его к прежнему размеру.

А что это за звездочка в левом нижнем углу? Она указывает на то, что файл изменялся и не сохранен; звездочка исчезает после сохранения файла клавишей F2 или командой меню File –> Save.

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


Рис.19 – Запрос на сохранение файла

Ответ Yes приведет к закрытию окна с сохранением последних изменений, ответ No – без сохранения. При нажатии кнопки Cancel окно не закроется, и вы сможете продолжить редактирование файла.

Повозитесь немного с окном, – это добавит вам уверенности.

Борьба с ошибками

Ошибки, ошибки… – их никому не миновать! Мы тоже не ангелы и будем ошибаться. Но в компьютере все поправимо. Не страшитесь ошибок, – вы всегда сможете найти и поправить их, и в этом IDE Free Pascal вам поможет.

Ошибки ошибкам рознь. В разговоре и письме мы допускаем ошибки разного рода: грамматические, синтаксические и смысловые. Вот школьная тетрадь, что там нацарапано? «МАлАко»? – ужас! – это грамматическая ошибка, такого слова нет. А если видим: «змея даёт зеленое молоко», – это смысловая ошибка, хоть с грамматикой тут все в порядке.

Вернемся к Паскалю. Превращая вашу программу в исполняемый файл, компилятор, подобно учителю, читает её слева направо и сверху вниз, зорко изучая вашу писанину. Обнаружив синтаксическую ошибку, он сообщит об этом и остановится. Исполняемый EXE–файл будет создан только при отсутствии синтаксических ошибок. К чему такая строгость? Мы склонны прощать друг другу мелкие огрехи, если понимаем смысл сказанного. Но компьютер не так умен, чтобы додумывать наши человеческие мысли, – вот почему так строг компилятор.

Обратимся к практике. Откройте файл с нашей первой программой и внесите ошибку в первой строке. Например, уберите первую букву в слове BEGIN.

egin

Writeln(’Привет!’)

end.

Запустите компиляцию этой программы – нажмите F9, – и что же? В окне сообщений вы увидите: «BEGIN expected…». Это значит, что компилятор не нашел обязательного в начале программы ключевого слова BEGIN. Компилятор может обнаружить много разных ошибок, вы найдете их перечень в справке по IDE (Appendix C, Compiler messages), а также в приложении Д.

Исправим эту ошибку и сделаем другую, – уберем закрывающую кавычку в тестовой константе (после восклицательного знака).

begin

Writeln(’Привет!)

end.

Попытавшись скомпилировать, получим сообщение: «String exceeds line». Это значит, что строковая константа превышает допустимый размер. Стало быть, компилятор не всегда точно определяет место ошибки, и тогда не худо самим «шевельнуть извилинами», – здесь полезна тренировка. Поупражняйтесь в поиске ошибок, внося их в программу сознательно. Запускайте компиляцию, и наблюдайте результат. Так накопите бесценный опыт исправления ошибок, и «ужасные» сообщения уже не запугают вас.

А найдет ли компилятор ошибку внутри апострофов? Как он воспримет слова «прЫвет» и «мАлАко»? Ничего не заметил? Это и понятно, ведь слова внутри апострофов компилятор не проверяет. Не его это дело, – он вообще не знает русского языка! В строковых константах он проверяет, как мы уже убедились, только парность апострофов.

Итоги

• В редакторе IDE можно одновременно открывать несколько исходных файлов с программами.

• При запуске IDE Free Pascal автоматически открывает файлы, открытые в предыдущем сеансе (точнее, окна, не закрытые при выходе из сеанса).

• Элементы управления окном редактора изменяют его размеры, перемещают по экрану, распахивают, сворачивают и закрывают окно.

• Компилятор Pascal проверяет текст программы при каждой компиляции. Обнаружив синтаксическую ошибку, он не создает исполняемый файл, а выводит краткое описание ошибки.

Глава 7

Развиваем успех

Теперь усложним задачу, пусть компьютер обратится к вам вот с таким пышным приветствием:

Мой повелитель!

Поздравляю тебя с первой программой!

Твой верный слуга Паскаль

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

Операторы и разделители

Создадим новый файл и сохраним его под именем «P_07_1.PAS». Напомню, что новый файл создается через пункт меню File –> New, а сохраняется нажатием клавиши F2. Покончив с этим, приступим к сочинению программы. Поразмыслив немного, вы наверняка напишите следующие строки.

begin

Writeln(’–’)

Writeln(’Мой повелитель!’)

Writeln(’Поздравляю тебя с первой программой!’)

Writeln(’Твой верный слуга Паскаль’)

Writeln(’–’)

end.

Ход вашей мысли ясен: уж если компилятор читает программу слева направо и сверху вниз, то и компьютер будет выполнять её в том же порядке. Вы угадали, так оно и есть! Ну что ж, пробуем скомпилировать свое детище, жмем F9 и что? Опять видим сообщение об ошибке (рис. 20)!


    Ваша оценка произведения:

Популярные книги за неделю