Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Порядок работы в Паскале




Часть IV. Работа в Паскале на компьютере

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

Что нужно знать и уметь к моменту выполнения первой программы?

· Вы должны иметь работающий компьютер с установленным на жестком диске Паскалем. Вы должны знать, где у компьютера кнопка включения. Очень желательно, чтобы кто-то опытный сказал вам, что Паскаль работает нормально, и показал, как его запускать. Если опытных рядом нет, я с грехом пополам попробую рассказать вам, как запустить Паскаль («с грехом пополам» потому, что для запуска Паскаля нужно иметь минимальные навыки работы или в Windows или в Norton или в чем-нибудь подобном, а это тема отдельной книги).

· Вы должны уметь работать с текстом в простейшем текстовом редакторе. Если не умеете, то вам вполне достаточно изучить приложение П1, где вам будут даны все необходимые навыки.

· Считаю совершенно необходимым, чтобы вы сохраняли все ваши программы, даже самые маленькие, на диске. Поэтому вы должны заранее знать, что такое каталоги (папки) и файлы. Если не знаете, то вам вполне достаточно прочитать приложение П2, где вы узнаете все необходимое.

· Вы должны знать имя каталога Паскаля и дорожку к нему (что это такое, читайте там же – П2).

(1) Запустите Паскаль

(2) Введите программу

(3) Сохраните программу на жестком диске

(4) Выполните программу

Если результаты вас удовлетворяют, перейдите к пункту 6

(5) Исправьте ошибки в программе

Вернитесь к пункту 3

(6) Отдыхайте

 

Рассмотрим подробно и по порядку пункты этого алгоритма.

 

(1) Запуск Паскаля

Итак, вы в отчаянном положении. Вы хотите запустить Паскаль, но не знаете, как это сделать, и некому вам объяснить. Я сейчас попробую вам помочь, но шансы на успех – 50 на 50.

Прежде всего прочитайте приложение П2 и параграфы (2) и (3) из этой главы, так как они помогут вам путешествовать по каталогам (обратите, кстати, внимание на двойную точку (..)). Напомню, что вы должны знать имя каталога Паскаля на вашем компьютере и дорожку к нему. Если не знаете, то могу вам подсказать, что скорее всего имя каталога – TP или TP70 или PASCAL или что-то очень близкое (если у вас Borland Pascal, то, возможно, BP). А находится этот каталог скорее всего в корне одного из логических дисков. Если его нет в корне, то он – внутри какого-нибудь каталога, скажем, PROGRAMS. Только не ищите его в каталоге WINDOWS, это опасно, да и не бывает его там. Вы должны также знать имя запускающего файла в каталоге Паскаля. Это turbo.exe (если у вас Borland Pascal, то bp.exe). Он может находиться не в самом каталоге Паскаля, а в его подкаталоге BIN.

А теперь вперед:

Включите компьютер, если он еще не включен. Некоторое время по черному экрану бегут белые слова – это компьютер рапортует вам о том, как он сам себя проверяет, загружает операционную систему (ОС) и, возможно, другие программы. Затем на экране устанавливается и замирает картинка. Ее вид зависит от ОС и других загруженных программ. В подавляющем большинстве случаев возможны три варианта:

 

А) Независимо от ОС, у вас автоматически загружается операционная оболочка Norton Commander. Это было бы легче всего.

Б) Ваша ОС – Windows 95.

В) Ваша ОС – Windows 3.1 или 3.11.

 

Рассмотрим все эти три варианта.

 

А) Загружен Norton Commander. Его вы узнаете по синему экрану, разделенному по вертикали пополам на две “панели”. На каждой панели – список файлов и подкаталогов какого-нибудь каталога какого-нибудь логического диска вашего компьютера. Имена каталогов приведены заглавными буквами, а имена файлов с расширениями – строчными. Обе панели совершенно равноправны. Это просто два независимых “окна”, глядящие внутрь ваших дисков. Наверху каждой панели написана дорожка к каталогу, внутренность которого вы лицезреете на панели.

Для начала щелкните по клавише F2. Возможно, в открывшемся меню вы сразу найдете Паскаль. Если нет, то при помощи клавиши Esc уберите меню с экрана.

При помощи клавиш, ®, ­, ¯, Tab, Enter попробуйте добраться до каталога Паскаля на манер того, как я вам советую в параграфе (3) добраться до вашего каталога. Только вместо полос прокрутки пользуйтесь мышкой или клавишами ­, ¯,, ®, а вместо двойного щелчка мышкой можете пользоваться клавишей Enter. Если вы хотите посмотреть содержимое другого логического диска, то, удерживая нажатой клавишу Alt, щелкните по клавише F1 или F2 и из появившегося меню выберите нужный диск.

Вот вы нашли Паскаль. Зайдите внутрь каталога Паскаля. Здесь вам нужно найти запускающий файл. Запустите Паскаль, щелкнув по этому файлу клавишей Enter. Дело сделано.

 

Б) Загружена ОС Windows 95. Попробуйте найти на экране значок с надписью Turbo Pascal или близкой, и если нашли, щелкните по ней мышкой дважды. Если двойной щелчок не получается, щелкните один раз, а затем нажмите клавишу Enter. Дело сделано.

Если значок не нашли, найдите в левом нижнем углу экрана «кнопку» Пуск или «подковырните» ее оттуда мышкой. Щелкните по ней мышкой. Щелкните в выпавшем меню слово Программы, а там – Проводник. Откроется окно, в котором вы попробуйте добраться до каталога Паскаля на манер того, как я вам советую в параграфе (3) добраться до вашего каталога. Но рычаги управления здесь другие. В левой половине окна Проводника вы увидите дерево, похожее на то, что я описывал в П2. Пользуясь полосами прокрутки, найдите на нем значок нужного вам логического диска и если слева от него стоит значок “+”, щелкните по плюсу. Из логического диска “выскочат” ветки-каталоги. Щелкните по значку нужного каталога. В правой половине окна Проводника вы увидите список файлов и подкаталогов этого каталога. Каталоги изображены значками в виде желтых папочек, файлы – любыми другими. Найдите запускающий файл в виде белого прямоугольника с нужным именем и щелкните его дважды.

Может так случиться, что Паскаль заартачится, не захочет запускаться, начнет предупреждать и жаловаться на что-то. Мой совет – попробуйте запустить Norton Commander. Для этого повторите все описанные действия, но не для запуска Паскаля, а для запуска Нортона. Его запускающий файл – nc.exe, находится он в каталоге, имя которому, скорее всего, NC или NC50 или Norton или близкий. Затем перейдите к пункту А).

 

В) Загружена ОС Windows 3.1 или 3.11. Перед вами – окно с надписью “Диспетчер программ”. Если окна нет, значит – значок с такой надписью. Щелкните по нему дважды, чтобы он превратился в окно. Если двойной щелчок не получается, щелкните один раз, а затем щелчок по слову «Развернуть». Окно раскрылось.

Щелкните по слову “Файл”. В выскочившем из него меню – по слову “Выполнить”. В узеньком окошке с названием “Командная строка” мигает курсор. Наберите на клавиатуре дорожку до Паскаля (например, c:\tp\turbo.exe) и щелкните по клавише ввода. Если дорожка верна, то дело сделано. Если нет, то Windows сообщит вам, что файл она не нашла. Щелкните по сообщению “ОК” на экране и попробуйте найти Паскаль, щелкнув на экране по кнопке “Пролистать”. Выберите мышкой “устройство” (нужный диск). Затем попробуйте найти “каталог”, щелкая дважды по значкам кажущихся вам подходящими каталогов. Начните с самого верхнего значка. Если двойной щелчок не получается, щелкайте один раз, а затем щелчок по слову «ОК». При этом в левом окне внимательно просматривайте имена файлов, входящих в выбранный вами каталог. В окне “Каталоги” значки каталогов-родителей расположены чуть левее, а каталогов-“детей и внуков” – правее. Пользуйтесь прокруткой. Заметив в левом окне запускающий файл Паскаля, щелкайте по нему – и ОК. И еще раз ОК. Дело сделано.

(2) Начало работы. Ввод программы. Выход из Паскаля

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

 
 

Иногда Паскаль настроен так, что при запуске вместо окна редактора показывает бессмысленное серое пространство - рабочий стол. Курсора нигде не видно, программу вводить некуда. Не огорчайтесь - дело легко поправить. Поправить или мышкой или с клавиатуры.

 
 

Мышкой быстрее - щелкните по слову Fileв главном меню наверху экрана, а затем в выпавшем из него другом меню - по слову New.

Если с клавиатуры, то нажмите клавишу F10, затем клавишами или ® подсветите слово File и нажмите клавишу ввода. Затем клавишами ­ или ¯ подсветите слово New и снова нажмите клавишу ввода.

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

(В дальнейшем для краткости я не буду писать, как выбирать пункты меню. Я просто напишу File ® New).

 

Выход из Паскаля - File ® Exit.

(3) Сохранение программына диске. Загрузка программыс диска

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

Для этого в меню File есть опция Save. Как только вы ее выберете, перед вами появится диалоговое окно – Паскаль предлагает вам выбрать каталог, в который вы хотите записать программу, и имя, которое вы хотите дать файлу вашей программы (Если вы не очень хорошо знаете, что такое файл и каталог, то сейчас самое время прочесть приложение).


Если вас не устраивает каталог, который предлагает Паскаль, то пролистайте его, щелкнув по стрелкам полосы прокрутки, чтобы найти две точки (..), которые служат выходной дверью из каталога. Щелкните по ним дважды – и вы окажетесь в родительском каталоге. Интерфейс Паскаля менее удобен, чем интерфейс Windows, но вы сможете все-таки отличать имена подкаталогов от имен файлов по косой черте (BackSlash) в конце имени подкаталога.

Путешествуя подобным образом по каталогам, вы в конце концов дойдете до нужного. Дважды щелкните по нему и вы окажетесь внутри него. После этого щелкните внутри поля для имени файла. Там замигает курсор. Сотрите все, что там написано, и введите туда придуманное вами имя файла. После этого нажмите клавишу ввода или щелкните на экране по кнопке OK. Ваша программа записана на диск. В качестве подтверждения заголовок вашего листа изменился с NONAME00.PAS на имя вашего файла с расширением PAS.

Теперь программу можно запускать на выполнение.

После выполнения программу обычно исправляют и дополняют и перед следующим выполнением опять сохраняют: File ® Save. Но в этот раз диалоговое окно не появляется. Паскаль, ни о чем вас не спрашивая, стирает с диска всю вашу старую программу и на ее место записывает с тем же именем ту, что вы видите на экране (и то, что вы видите, прокрутив окно, конечно). Так поступают все современные программные продукты.

Если старый вариант программы вам по каким-то соображениям дорог и вы не хотите его стирать, вам нужно выполнить File ® Save as… На экране возникает то же самое диалоговое окно, предлагающее вам то же самое имя файла в том же самом каталоге. Измените имя или каталог и щелкните по кнопке OK. Ваша программа с экрана будет записана в другое место диска, а старый файл будет нетронут.

Загрузка программы с диска. Предположим, вы вчера сохранили свою программу, а сегодня хотите продолжить с ней работу. Вы включаете компьютер, запускаете Паскаль, перед вами пустое окно редактора. Ваши действия: File ® Open. На экране появляется диалоговое окно, очень похожее на то, что появляется при сохранении программы:

 
 

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

(4) Выполнение программы

Перед тем, как выполнить программу, убедитесь, что курсор мигает внутри окна этой программы или что это окно обведено двойной, а не одинарной рамочкой. Я об этом упоминаю потому, что если вы работаете с несколькими окнами (о чем речь ниже), то курсор может мигать в любом из них.

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

Чтобы увидеть результаты, можно пойти двумя путями:

· После того, как программа уже выполнилась, выбрать опцию User Screen. В Турбо-Паскале 7.0 она находится в пункте меню Debug. Если вам не хочется искать ее в меню, нажмите Alt-F5. На экране возникнет окно пользователя с результатами. Этот способ плох при работе в графическом режиме: изображение или искажено, или вообще не просматривается.

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

 

Прокрутка окна пользователя. Если ваша программа печатает много результатов, то все они могут и не поместиться на экране. В этом случае Паскаль начинает прокручивать окно пользователя, и самые верхние результаты исчезают из окна (их уж не вернуть!). Поскольку прокрутка обычно идет быстро, то вы просто не успеваете рассмотреть бегущие по экрану и убегающие наверх результаты. Спокойно посмотреть на них вы сможете только при остановке программы (по ReadLn или по окончанию работы). Чтобы результаты не успели убежать нерассмотренными наверх, используйте не один, а несколько ReadLn, расставив их в нужных местах программы.

 

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

Для прерывания работы программы (в том числе и зациклившейся) существует комбинация клавиш Ctrl-Break. На экран возвращается окно редактора. Строка программы, на которой она была прервана, выделяется полосой белого цвета. Если вы снова запустите программу, она продолжит работу с прерванного места. Чтобы начать сначала, уберите полосу с экрана клавишами Ctrl-F2.

(5) Исправление ошибок. Отладка программы.

Сообщения об ошибках. Ошибки в программах делятся на те, которые Паскаль замечает, и на те, что не замечает и в принципе заметить не может. К первым относятся все синтаксические погрешности, например, BIGIN вместо BEGIN. Их Паскаль замечает еще на стадии компиляции. На стадии выполнения он замечает такие ошибки, как Sqrt(-25), то есть квадратный корень из ‑25. Но вот, если вы, желая возвести число a в куб, вместо a*a*a пишете a*a, то этого не заметит ни один язык в мире.

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

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

Вот наиболее типичные для начинающих сообщения об ошибках того и другого рода:

Сообщение Перевод Вероятная причина ошибки
Unexpected end of file Неожиданный конец файла Вы забыли поставить точку после последнего END. Или не совпадает количество begin и количество end
“;” expected Ждал точку с запятой Вы забыли поставить точку с запятой после предыдущего оператора
“,” expected Ждал запятую Вы указали слишком мало параметров в обращении к подпрограмме
“)” expected Ждал скобку “)” Вы указали слишком много параметров в обращении к подпрограмме
Unknown identifier Неизвестное имя Вы забыли описать это имя в разделе описаний Неправильно записали стандартное имя, например, ReedLn вместо ReadLn
Type mismatch Несовпадение типов В вашей программе встречаются примерно такие «сладкие парочки»: VAR c:String; … c:=1+2 или VAR h:Integer; … h:=9/7
Duplicate identifier Дубль имени Одно и то же имя описано два раза. Например, VAR a, c, a:String;
Syntax error Синтаксическая ошибка Паскаль затрудняется назвать причину ошибки. Часто причина в том, что вы забыли взять строковую константу в кавычки
BEGIN expected Ждал BEGIN Возможно, не совпадает количество begin и количество end
END expected Ждал END Возможно, не совпадает количество begin и количество end
String constant exeeds line Строковая константа превышает допустимую длину Вы забыли закрыть кавычки в строковой константе
Line too long Строчка слишком длинна Слишком длинная строчка в программе (не путать со строковой константой, которую нужно брать в кавычки). Не рекомендую залезать программным текстом за правый край экрана
Disk full Диск заполнен На вашем диске не осталось места. Надо что-то стереть
Lower bound greater than upper bound Нижняя граница диапазона больше верхней Например, вы вместо array[2..5] написали array[5..2].
Invalid floating point operation Неправильная операция с вещественным результатом Sqrt(-25) или a/0 или что-нибудь в этом роде
Ordinal expression expected Ждал выражение порядкового типа Например, вы вместо for i:=1 to 8 написали for i:=1 to 8.5
Error in expression Ошибка в выражении Например, вы вместо k:=а*8 написали k:=а**8
Range check error Ошибка проверки диапазона Переменная в процессе выполнения программы вышла за пределы допустимого диапазона, как например, в 12.9
Constant out of range Константа не в диапазоне Величина константы в программе превосходит допустимый диапазон
Invalid numeric format Неправильный числовой формат Если, например, вы по оператору ReadLn(k) в программе VAR k:Integer; …. ReadLn(k) … пытаетесь ввести число 25.3

Более подробное описание некоторых ошибок вы найдете в 4.3.

 

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

expected ждал

identifier имя

invalid неправильный

operation операция

error ошибка

variable переменная

 

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

 

 

Пошаговый режим

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

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

Идея пошагового режима вот в чем. Компьютер слишком быстро выполняет программу и человек не успевает проследить «за ходом его мыслей». Хорошо бы мы сами задавали темп выполнения программы. Тогда ошибку обнаружить было бы значительно легче.

Рассмотрим задачу из 5.1: В компьютер вводятся два произвольных положительных числа - длины сторон двух кубиков. Компьютер должен подсчитать объем одного кубика - большего по размеру. Обозначаем a1 - сторону одного кубика, a2 - сторону другого, V - объем кубика. Приведем второй вариант программы:

VAR a1,a2,V: Real;




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 691; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.039 сек.