Основы среды программирования Турбо Паскаль

Здесь мы с Вами попробуем разобраться в таком языке программирования как – Паскаль, а если быть конкретней, то в его реализации системе программирования Турбо Паскаль. Основные моменты материала:

  • Основы языка паскаль и системы программирования Turbo Pascal;
  • Структура системы программирования Turbo Pascal;
  • Основные клавиша и сочетания клавиш в Turbo Pascal;
  • Основные приемы работы с редактором кода программы;
  • Напишем первую программу на языке Turbo Pascal;
  • Типы данных в Турбо паскале.

Теория по языку Turbo Pascal

Язык программирования Pascal получил свое название в честь выдающегося французского математика, физика, философа Блеза Паскаля (1623-1662), который изобрел механическую счетную машину для выполнения арифметических. В 1965 году Международная федерация по обработке информации (IFIP) предложила нескольким специалистам в области информатики принять участие в создании нового языка программирования. В их состав вошел швейцарский ученый Н.Вирт. Совсем скора он и его коллеги из Федерального технического университета подготовили первую версию Паскаля, затем – первый вариант компилятора, а в 1971 году вышло описание языка. В середине 80-х гг. фирмой Borland International, Inc (США) для повышения качества и скорости разработки программ  была создана среда программирования Turbo Pascal, которая расширяла область применения языка и дала основу развития самого язык а программирования.

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

Широкой популярности Паскаля способствовали следующие причины:

  • Благодаря компактности, удачному первоначальному описанию язык оказался достаточно легким для изучения;
  • Он отражает фундаментальные концепции алгоритмов в легко воспринимаемой форме;
  • Паскаль позволяет четко реализовывать идеи структурного программирования и осуществлять переход к объектно-ориентированному программированию (язык Турбо Паскаль предоставляет программисту все средства ООП: высокую степень структурированности, модульность, абстрактность и возможность повторного использования, которые встроены непосредственно в язык);
  • Язык программирования позволил перейти к системам автоматической проверки правильности программ.

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

Для того чтобы запустить Турбо Паскаль необходимо открыть файл TURBO.EXE. Этот файл отвечает за запуск готовой к работе диалоговой системы программирования Турбо Паскаль. В систему входят только необходимые части Турбо Паскаля (текстовый редактор, компилятор, компоновщик, загрузчик). Для нормальной работы в системе понадобятся также основная библиотека, располагающаяся в файле TURBO.TPL, и справочная служба (файл TURBO.HLP) В принципе, этих файлов будет достаточно для написания, компиляции и исполнения небольших программ.
Сразу же скажем, что для выхода из Турбо Паскаля следует нажать клавишу Alt и, не отпуская ее, — клавишу с латинской буквой X, после чего можно отпустить обе клавиши.

Структура системы программирования Turbo Pascal

Программный блок, состоящий из 2 разделов:

1. Раздел описаний, в котором должны быть описаны все идентификаторы, встречающиеся в программе. Он представляет собой:
список имен подключаемых библиотечных модулей (определяется зарезервированным словом uses);

  • описание меток;
  • описание констант;
  • определение типов данных;
  • описание переменных;
  • описание процедур и функций;

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

2. Раздел  операторов.

Данный раздел начинается со служебного слова Begin и заканчивается служебным словом End. Далее задаются действия над объектами программы, введенными в разделе описаний. Операторы, посредством которых эти действия производятся, разделяются точкой с запятой. После последнего слова End ставится точка.

Для лучшего восприятия текста программы и поиска ошибок рекомендуется следующая схема:
зарезервированные слова program, procedure, function и т.д. пишутся строчными буквами;

  • идентификаторы начинаются с прописных букв;
  • операторы записываются строчными буквами;

В верхнем «меню» содержится строка возможных режимов работы Турбо Паскаля, нижняя — небольшую справку о сочетание основных функциональных клавиш. Вся остальная часть экрана принадлежит окну редактора кода, которое служит для ввода и коррекции текстов программ. В его верхней строке приводятся имя того дискового файла, откуда был прочитан текст программы (новому файлу присваивается имя NONAME00.PAS) два специальных поля, используемых при работе с устройством ввода «мышь» (эти поля выделены квадратными скобками), и цифра один — номер окна. В Турбо Паскале, возможно, работать одновременно с несколькими программами (или формами одной большой программы), каждая из которых может располагаться в отдельном окне редактора кода. Среда позволяет использовать до девяти окон редактора одновременно.

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

Основные клавиши для работы используются для управления средой Turbo Pascal. Они обозначаются Fl, F2, … , F12 и располагаются с верху на клавиатуре. С каждой из этих клавиш связывается некоторая команда меню. Действие почти всех функциональных клавиш можно охарактеризовать тремя особыми клавишами: Alt (от ALTernative — дополнительный), Ctrl (ConTRoL — управляющий) и Shift (SHIFT — сдвиговый). Эти клавиши используются подобно клавиши временной смены регистра на пишущей машинке: нужно нажать на одну из них и затем, не отпуская ее, нажать другую клавишу.
Сейчас приведем команды, которые передаются среде Турбо Паскаля функциональными клавишами и некоторыми их сочетания с клавишами Ctrl и Alt:

  • Fl — обратиться за справкой к встроенной справочной службе (Help-помощь);
  • F2 — записать редактируемый текст в дисковый файл;
  • F3 — прочитать текст из дискового файла в окно редактора;
  • F4 — используется в отладочном режиме: начать или продолжить исполнение программы и остановиться перед исполнением той ее строки, на которой стоит курсор;
  • F5 — распахнуть активное окно на весь экран;
  • F6 — сделать активным следующее окно;
  • F7 — используется в отладочном режиме: выполнить следующую строку программы; если в строке есть обращение к процедуре (функции), войти в эту процедуру и остановиться перед исполнением первого ее оператора;
  • F8- используется в отладочном режиме: выполнить следующую строку программы; если в строке есть обращение к процедуре (функции), исполнить ее и не прослеживать ее работу;
  • F9 — компилировать программу, но не выполнять ее;
  • F10 — перейти к диалоговому выбору режима работы с помощью главного меню;
  • Ctrl-F9 — выполнить прогон программы: компилировать программу, находящуюся в редакторе, загрузить ее в оперативную память и выполнить, после чего вернуться в среду Турбо Паскаля.
  • ALT-F8 — сменить окно редактора на окно вывода результатов работы (прогона) программы.

Текстовый редактор системы Turbo Pascal предоставляет программисту удобные средства создания и редактирования кодов программ. Признаком того, что система находится в состоянии редактирования, является наличие в окне редактора курсора. Режим редактирования автоматически устанавливается сразу после загрузки Turbo Pascal. Из режима редактирования можно перейти к любому другому режиму работы Турбо Паскаля с помощью специальных клавиш или выбора подходящего режима из главного меню. Если среда находится в состоянии выбора из меню, курсор исчезает, а в строке меню появляется цветной указатель-прямоугольник, выделяющий одно из кодовых слов (опций меню). Для перехода от состояния выбора режима из главного меню в состояние редактирования нужно нажать клавишу Esc (ESCape- ускользать, убегать), а для перехода к выбору из главного меню — F10.

Рассмотрим основные приемы работы с редактором кода программы

Для написания кода программы нужно ввести этот текст с помощью клавиатуры,  прям как при обычной печати текста. После заполнения очередной строки следует нажать на клавишу Enter, чтобы перевести курсор на следующую строку (курсор всегда показывает то место на экране, куда будет помещен очередной вводимый символ программы).
Окно редактора кода похоже на длинный и достаточно широкий лист бумаги, который виден в окне. Если курсор достиг нижнего края, осуществляется прокрутка окна редактора: его содержимое смещается вверх на одну строку и снизу появляется новая строка листа. Если курсор достиг правой границы программы, окно начинает по мере ввода символов смещаться вправо, показывая правый край листа. Размеры листа по горизонтали и вертикали ограничиваются только общим числом символов в файле, которых не должно быть больше 64535, однако компилятор Turbo Pascal воспринимает строки программы длиной не более 126 символов.
Окно можно смещать относительно листа с помощью сочетания клавиш:

  • Page Up — на страницу вверх;
  • Page Down — на страницу вниз;
  • Ноте — в начало текущей строки;
  • End — в конец текущей строки;
  • Ctrl-Page Up — в начало текста;
  • Ctrl-Page Down — в конец текста.

Если Вы ошиблись при вводе очередного символа, его можно стереть с помощью клавиши со стрелкой (или надписью Backspace), расположенной на клавиатуре. Клавиша Delete стирает символ, на который в данный момент указывает курсор, а команда Ctrl-Y- всю строку, на которой расположен курсор.

Следует помнить, что редактор кода Turbo Pascal вставляет в конце каждой строки специальный символ-разделитель. Этот символ вставляется клавишей Enter, а стирается клавишами Backspace или Delete. С помощью вставки/стирания разделителя можно «разрезать»/«склеить» строки. Чтобы разрезать строку, следует подвести курсор к нужному месту и нажать Enter, чтобы склеить соседние строки, нужно установить курсор в конец первой строки (для этого удобно использовать клавишу End) и нажать Delete или установит курсор в начало второй строки и нажать Backspace.

Нормальный режим работы редактора кода — режим вставки, в котором каждый вновь вводимый символ как бы «раздвигает» текст на экране, смещая вправо остаток строки. Следует учитывать, что разрезание текста и последующая вставка пропущенных строк возможны только в этом режиме. Редактор может также работать в режиме наложения новых символов на существующий старый текст: в этом режиме новый символ заменяет собой тот символ, на который указывает курсор, а остаток строки не смещается, вправо. Для перехода к режиму наложения нужно нажать клавишу Insert, а если нажать эту клавишу еще раз, вновь устанавливается режим вставки. Признаком того, в каком режиме работает редактор, является форма курсора: в режиме вставки он похож на мигающий символ подчеркивания, а в режиме наложения он представляет собой крупный мигающий прямоугольник, заслоняющий символ целиком.

И еще об одной возможности редактора. Обычно редактор работает в режиме автоотступа. В этом режиме каждая новая строка начинается в той же позиции на экране, что и предыдущая. Режим автоотступа поддерживает хороший стиль оформления текста программы: отступы от левого края выделяют тело условного или составного оператора и делают программу более наглядной. Отказаться от автоотступа можно командой Ctrl-O I (при нажатой Ctrl нажимается сначала клавиша с латинской буквой О, а затем О отпускается и нажимается I), повторная команда Ctrl-O I восстановит режим автоотступа.

Ниже перечислены наиболее часто используемые команды редактор Turbo Pascal.

  • Page  Up — на страницу вверх;
  • Page Down — на страницу вниз;
  • Ноmе — в начало текущей строки;
  • End — в конец текущей строки;
  • Ctrl-Page Up -в начало текста;
  • Ctrl-Page Down — в конец текста.

Команды редактирования:

  • Backspace — стирает символ слева от курсора;
  • Delete — стирает символ, на который показывает курсор;
  • Ctrl-Y-стирает строку с курсором;
  • Enter — вставляет новую строку, разрезает старую;
  • Ctrl-QL — восстанавливает измененную строку (действует, если курсор не покидал строку после ее изменения).

Работа с блоком:

  • Ctrl-KB- начинает выделение блока;
  • Ctrl-K К- заканчивает выделение блока;
  • Ctrl-K Y — уничтожает выделенный блок;
  • Ctrl-С — копирует блок;
  • Ctrl-K V — перемещает блок на новое место;
  • Ctrl-KR — читает блок из файла;
  • Ctrl-K P — печатает блок.

Как уже говорилось, сразу после запуска Turbo Pascal система переходит в режим редактирования кода, в котором можно подготовить новую программу или исправить существующую.
Основной формой хранения текстов программ вне среды являются файлы. После завершения работы с Турбо Паскалем можно сохранить код новой программы в дисковом файле с тем, чтобы использовать его через некоторое время. Для обмена данными между дисковыми файлами и редактором среды предназначены клавиши F2 (запись в  файл) и F3 (чтение из файла). Если Вы создаете новую программу, то среда еще не знает имя того файла, в который Вы захотите поместить текст этой программы, и поэтому она присваивает ей стандартное имя NONAME00.PAS(NO NAME — нет имени). Для сохранения текста программы в файле нужно нажать F2. В этот момент среда проверит имя программы и, если это стандартное имя NONAME, спросит, нужно ли его изменять: на экране появится небольшое окно запроса с надписью

Save   File   as (Сохранить  в  файле с именем…)

Ниже надписи располагается поле для ввода имени файла, в котором можно написать нужное имя и нажать Enter — текст будет сохранен в файле. Если в имени опущено расширение, среда присвоит файлу стандартное расширение PAS. Если Вы захотите завершить работу с Турбо Паскалем, а в редакторе остался не сохраненный в файле текст, на экране появится окно с запросом

NONAMEOO.PAS has been modified. Save? (Файл NONAMEOO.PAS   был изменен. Сохранить?)

В ответ следует нажать Y (Yes — да), если необходимо сохранить текст в файле, или N (No — нет), если сохранять текст не нужно.

Прогон и отладка программы

После написания кода программы можно попытаться исполнить ее, т.е. откомпилировать программу, связать ее (если это необходимо) с библиотекой стандартных процедур и функций, загрузить в оперативную память и передать ей управление. Вся эта последовательность действий называется прогоном программы и реализуется командой Ctrl-F9.
Если в программе нет синтаксических ошибок, то все действия выполняются последовательно одно за другим, при этом в небольшом окне сообщается о количестве откомпилированных строк и объеме доступной оперативной памяти. Перед передачей управления загруженной программе среда очищает экран (точнее, выводит на экран окно прогона программы), а после завершения работы программы вновь берет управление компьютером на себя и восстанавливает на экране окно редактора.

Если на каком-либо этапе среда обнаружит ошибку, она прекращает дальнейшие действия, восстанавливает окно редактора и помещает курсор на ту строку программы, при компиляции или исполнении которой обнаружена ошибка. При этом в верхней строке редактора появляется диагностическое сообщение о причине ошибки. Все это позволяет очень быстро отладить программу, т.е. устранить в ней синтаксические ошибки и убедиться в правильности ее работы. Если ошибка возникла на этапе прогона программы, простое указание того места, где она обнаружена, может не дать нужной информации, так как ошибка может быть следствием неправильной подготовки данных в предыдущих операторах программы. Например, если ошибка возникла в результате извлечения квадратного корня из отрицательного числа, будет указан оператор, в котором осуществляется извлечение корня, хотя ясно, что первопричину ошибки надо искать где-то раньше, там, где соответствующей переменной присваивается отрицательное значение. В таких ситуациях обычно прибегают к пошаговому исполнению программы с помощью команд, связанных с клавишами F4, F7 и F8. Пока еще не накоплен достаточный опыт отладки, можно воспользоваться одной клавишей F7, после нажатия, на которую среда осуществит компиляцию, компоновку (связь с библиотекой стандартных процедур и функций) и загрузку программы, а затем остановит прогон перед исполнением первого оператора. Строка программы, содержащая этот оператор, будет выделена на экране указателем (цветом). Теперь каждое новое нажатие F7 будет вызывать исполнение всех операций, запрограммированных в текущей строке, и смещение указателя к следующей строке программы. В подозрительном месте программы можно просмотреть текущее значение переменной или выражения. Для этого нужно установить курсор в то место строки, где находится имя интересующей Вас переменной, и нажать Ctrl-F4. На экране появится диалоговое окно, состоящее из трех полей (в верхнем поле будет стоять имя переменной, два других поля будут пустыми). Нажмите Enter, чтобы в среднем поле получить текущее значение переменной. Если перед нажатием Ctrl-F4 курсор стоял на пустом участке строки или указывал на имя другой переменной, верхнее поле диалогового окна также будет пустым или содержать имя этой другой переменной. В этом случае следует ввести с помощью клавиатуры имя нужной переменной и нажать Enter. Кстати, таким образом можно вводить не только имена прослеживаемых переменных, но и выражения — среда вычислит и покажет значение введенного выражения.

Справочная информация Turbo Pascal

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

  • F1 — получение контекстно-зависимой справки;
  • Shift-Fl- выбор справки из списка доступных справочных сообщений
  • Ctrl-Fl — получение справки о нужной стандартной процедуре, функции, о стандартной константе или переменной;
  • Alt-Fl — получение предыдущей справку.

По сочетанию клавиш Shift-F1 на экране появится окно, которое сожержит отсортированный по алфавиту список стандартных процедур, функций, типов, констант и переменных, для которых можно получить необходимую справочную информацию.

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

Во многих случаях справочная информация содержит небольшой пример, иллюстрирующий соответствующие возможности Turbo Pascal. Не спешите запоминать его или записывать на листе бумаги: его можно «вырезать» из справки и перенести в окно редактора. Для этого после вызова справки нажмите Alt-E, выберите в появившемся дополнительном меню продолжение Copy examples (копировать примеры) и нажмите Enter — текст примера скопируется во внутренний буфер редактора. Для извлечения пример из буфера, нажмите Esc, чтобы выйти из справочной службы, подвести курсор к свободной строке в окне редактора, нажмите Shift-Insert (копирование содержимого буфера в текст программы) и Ctrl-KH, чтобы убрать выделение скопированного текста цветом.

Ваша первая программа на Turbo Pascal

Здесь изучим ядро Турбо Паскаля — минимальный набор средств, достаточный для написания сравнительно простых программ. В частности, рассмотрим с Вами некоторые операторы языка, наиболее популярные типы данных и операции над ними.

Для знакомства с языком Turbo Pascal попробуем написать небольшую программу, осуществляющую вывод какого-либо сообщения на монитор компьютера. Пусть это будет фраза «Это мой первая программа». Вот возможный вариант такой программы:

Пример:

Program My_First_Program;
const
Text = ‘ Это моя первая программа’;
begin
WriteLn(Text);
end

Прежде всего, рассмотрим форму представления кода.
Первая строка
Program My_First_Program;
Начинается, словом Program и содержит объявление названия программы. Слово Program зарезервировано в Turbo Pascal, т.е. не может использоваться ни в каких иных целях, кроме как для объявления имени программы. В Turbo Pascal имеется множество зарезервированных слов. Любое из них нельзя использовать в качестве идентификатора (имени) какого-либо объекта программы — переменной, константы и так далее. К слову,  редактор системы Turbo Pascal обычно выделяет зарезервированные слова цветом.
В этом примере имя My_First_Program служит, как английская фраза «Моя Первая Программа», но только написанная без пробелов — пробел является разделителем и не может использоваться произвольно (вместо пробелов в идентификаторах разрешается использовать символ подчеркивания).
Первая строка заканчивается особым разделителем — точкой с запятой. Этот разделитель в языке Турбо Паскаль отмечает конец оператора или описания. Использование особого разделителя позволяет располагать несколько операторов на одной строке.

Вторая строка

const

Обозначает единственное зарезервированное слово const, означающее, что далее будут описаны одна или несколько констант {CONSTants- константы). Константами в языке считаются такие объекты программы, которые не могут изменять своего значения. В отличие от многих других языков программирования, константа в Turbo Pascal может иметь собственное имя, что соответствует принятой в научных и инженерных расчетах практике именования часто используемых констант. Например, со школы мы помним о существовании константы П=3,14159265. При обработке программы имя константы П будет заменяться компилятором на ее значение.
Описать константу в Турбо Паскале — значит указать ее имя и значение. Такое указание содержится в третьей строке

Text = ‘ Это моя первая программа’;

константе Text присваивается значение строка символов «Это моя первая программа».
В Турбо Паскале могут использоваться константы разного типа — целые или вещественные числа, символы, строки символов, массивы и т.д. Признаком того, что Text является константой типа строка символов, служат два апострофа, обрамляющих строку, причем сами апострофы этой строке не принадлежат, а лишь указывают компилятору на то, что все заключенные в них символы следует рассматривать как единое целое — текстовую константу. Если понадобится включить сам апостроф в текстовую константу, достаточно его написать дважды подряд. Например, описание
Text =  ‘ Турбо! ‘  ‘ Паскаль’; создаст константу со значением Турбо Паскаль.

Все три первые строки не связаны с какими-либо конкретными действиями при выполнение программы. Они говорят компилятору некоторые сведения о самой программе и использующихся в ней объектах. Эта часть программы называется разделом описаний. Зарезервированное слово begin в четвертой строке сигнализирует компилятору о начале другой части программы — раздела операторов. В нашем примере этот раздел содержит оператор

WriteLn(Text);

который, собственно, и выводит сообщение на экран монитора.
Завершает всю программу зарезервированное слово end с точкой. Точка оповещает компилятор о конце кода программы. За сочетанием end. можно размещать любой текст — он не будет учитываться компилятором.
Перед тем как попробовать откомпилировать и исполнить нашу программу, обсудим ее единственный исполняемый оператор WriteLn(Text).

Интересно, что в  Турбо Паскале,  нет специальных операторов ввода-вывода. Для обмена информацией с окружающим миром в программах, написанных на языке Турбо Паскаль, используются специальные стандартные процедуры. Таким образом, по своей сути оператор WriteLn(Text) является оператором обращения к встроенной процедуре вывода данных (свое название она получила от WRITE LiNe — записать строку).

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

Процедура WriteLn относится к стандартным или встроенным процедурам Turbo Pascal. Встроенная процедура не нуждается в предварительном объявление, она доступна любой программе, в которой содержится обращение к ней. Разница между оператором вывода и обращением к процедуре вывода состоит в том, что имя процедуры вывода, как и любой другой процедуры Turbo Pascal, не является зарезервированным словом, а, соответственно, программист может написать свою собственную процедуру с именем WriteLn. Однако, эта возможность для большинства пользователей остается лишь языковой тонкостью и очень редко используется при написание программ.

Процедура WriteLn — одна из немногих процедур Турбо Паскаля, при обращении которой допускается использование произвольного числа параметров. Параметры передаются процедуре в виде списка, располагающегося в круглых скобках сразу за именем процедуры. В нашем примере процедуре передается единственный параметр  константа Text. Как мы увидим дальше самым первым параметром при обращении к процедуре WriteLn можно указать адрес приемника информации — устройство или дисковый файл, в который направляется вывод. Таким способом программист может легко переадресовать вывод данных. Если, как это сделано в нашем примере, адрес вывода не указан, вывод направляется на экран дисплея.

Рассмотрев всю программу в целом, мы обнаружим, что четыре использовавшихся в ней слова (Program, const, begin и end) являются зарезервированными. Слово WriteLn, как уже отмечалось, не относится к зарезервированным, но вряд ли может возникнуть необходимость переопределить его, так как в этом случае программа лишится мощного и удобного средства вывода данных. Два слова My_First_Programи Text служат идентификаторами (именами) некоторых объектов программы. Программист может использовать в качестве идентификаторов любые последовательности символов, которые удовлетворяют следующим ограничениям:

  • Идентификатор может состоять из букв латинского алфавита, цифр, знака подчеркивания; никакие другие символы в идентификаторе недопустимы;
  • Идентификатор не может начинаться с цифры;
  • Идентификатор не может совпадать ни с одним из зарезервированных слов;
  • Длина идентификатора может быть  произвольной,   но значащими считаются первые 63 символа.

Как и всюду в программе, в идентификаторах игнорируется разница в высоте букв, поэтому, например, идентификаторы Text, text и TEXT с точки зрения компилятора идентичны.

Теперь попробуйте исполнить программу. Для этого после набора ее кода нажмите Ctrl-F9. Если Вы не ошиблись при вводе текста, то спустя некоторое время вы увидите быструю смену изображений на экране: сразу после загрузки программы Turbo Pascal очищает экран, предоставляя его в распоряжение работающей программы пользователя. Такой экран называется окном программы. После завершения прогона на экране вновь появится окно редактора с текстом программы. Если Вы не успели разглядеть изображение окна программы, нажмите ALT-F5. После нажатия на любую клавишу среда вернет экран в режим воспроизведения окна редактора.

Двойная рамка, очерчивающая окно программы, свидетельствует о том, что именно это окно активно в данный момент. Сделаем активным окно редактора: нажмем клавишу Alt и, не отпуская ее, — клавишу с цифрой 1 (окно редактора имеет номер 1, окно программы — номер 2, см. верхние правые углы рамок ). Теперь все готово к дальнейшим экспериментам с программой.

Попробуем изменить выводимый на экран текст. Например, уберем в конце третьей строки точку с запятой и отредактируем ее таким образом:
Text = ‘ это моя первая программа’
Если Вы запустите программу вновь, нажав клавиши CM-F9, компилятор сообщит: Error 85:    «;»   expected. (Ошибка 85:   Отсутствует «;».),
а редактор установит курсор на первый символ слова begin, показывая то место, где при разборе текста обнаружена ошибка (разделитель «;» может отделять от конца оператора сколько угодно пробелов; компилятор пропускает эти пробелы в поисках разделителя до тех пор, пока не обнаружит зарезервированное слово, — вот почему курсор стоит не в конце строки с объявлением константы, а перед словом begin). Исправьте программу — поставьте в конце третьей строки разделитель «;» и вновь запустите счет. На этот раз все пройдет нормально, но вывод программы изменится.

Этот текст строго соответствует заданному в текстовой константе набору символов, поэтому в нем отсутствуют прописные буквы.

Типы данных

Структура рассмотренной программы имеет следующий вид:
Program My_First_Program;
{Раздел описаний)
begin
{Раздел   операторов}
end.
Слова Program, begin и end выделяют две части программы — раздел описаний и раздел операторов. Такая структура обязательна для любой программы, что является следствием жесткого требования языка: любой нестандартный идентификатор, используемый в исполняемых операторах, должен быть предварительно описан в разделе описаний. (Стандартные идентификаторы связаны с предварительно объявленными объектами и входят в стандартную библиотеку Турбо Паскаля. Таким, например, является идентификатор WriteLn. Стандартные идентификаторы, если они используются в программе, описывать не нужно).

Требование предварительного описания идентификаторов кажется чрезмерно строгим и делающим язык менее свободным. На самом деле в нем проявляется тенденция развития языков программирования в сторону повышения надежности создаваемых программ. Кто программировал на Фортране или Бэйсике (в этих языках не требуется предварительное описание идентификаторов), знает, как порой бывает трудно обнаружить в большой программе ошибочно введенный или пропущенный символ в идентификаторе. Если, например, всюду в программе используется переменная с именем EPSILON, а в одном месте ошибочно написано EPSLON, то программа может благополучно откомпилироваться и даже давать почти правдоподобный результат для некоторых наборов данных, но в какой-то момент начнет вести себя странно. Обязательное предварительное описание идентификаторов в Турбо Паскале защищает программы от такого рода ошибок и повышает их надежность.

Описать идентификатор — это значит указать тип связанного с ним объекта программы (константы или переменной). Понятие типа — одно из основных понятий Turbo Pascal.

Мы с Вами рассмотрим такие типы как:

  • INTEGER — целочисленные данные, во внутреннем представлении занимают 2 байта; диапазон возможных значений — от -32768 до +32767; данные представляются точно;
  • REAL — вещественные данные, занимают 6 байт; диапазон возможных значений модуля — от 2.9Е-39 до 1.7Е+38; точность представления данных — 11…12 значащих цифр;
  • CHAR — символ, занимает 1 байт;
  • STRING — строка символов, занимает МАХ+1 байт, где МАХ — максимальное число символов в строке
  • BOOLEAN — логический тип, занимает 1 байт и имеет два значения: FALSE (ложь) и TRUE (истина).

Тип константы определяется способом записи ее значения:
Const
C1=17;
C2=3.14;
C3= ‘A’;
C4=’3.14’;
C5=false;
При анализе этого кода программы компилятор отнесет первую константу к типу INTEGER, вторую — к типу REAL, третью — к CHAR, четвертую — к STRING и последнюю — к BOOLEAN. Признаком, позволяющим отнести константу к REAL или к INTEGER, является наличие или отсутствие десятичной точки в ее значении. Разумеется, константы С2 и С4 относятся к разным типам: С2 — к REAL (в константе есть десятичная точка), а С4 — к STRING (константа обрамлена апострофами). Константу СЗ компилятор будет считать относящейся к типу CHAR: одиночный символ в апострофах относится к CHAR, в то время как несколько символов — к STRING.

В отличие от константы переменная называет объект программы, который может изменять свое значение в ходе счета. При описании переменных за идентификатором ставятся двоеточие и имя типа. Несколько похожих переменных можно объединять в список, разделяя их запятыми. В начале раздела описания переменных должно стоять зарезервированное слово VAR (VARiables- переменные).

Как уже отмечалось, тип данных определяет длину внутреннего представления соответствующих переменных. Поэтому, длина внутреннего представления переменных типа STRING (строка символов) зависит от максимального числа символов, которые могут составлять строку. Как говорилось в примере переменная text1 описана с указанием ее максимальной длины (15 символов), а в описании переменной text2 максимальная длина не указана и компилятор установит для нее предельно допустимую в Turbo Pascal длину — 255 символов.

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

Понравилась статья? Поделиться с друзьями:
Заметки IT специалиста
Комментарии: 4
  1. Аватар
    Ильшат

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

  2. Аватар
    Bjorn

    Цитирую Ильшат:Пожалуиста напишите мне програму:
    Найти все натуральные числа, не превосходящие заданного N и представимые в виде суммы квадратов двух каких-нибудь различных натуральных чисел.
    Если ты собираешься стать программистом, то ты должен делать (программироват ь) сам! Иначе хорошего ничего не выйдет…

  3. Аватар
    Влад Баринков

    Цитирую Ильшат:Пожалуиста напишите мне програму:
    Найти все натуральные числа, не превосходящие заданного N и представимые в виде суммы квадратов двух каких-нибудь различных натуральных чисел.
    Дружище , если бы ты хоть немного посидел , то понял на сколько это же просто… Я ученик 9 класса , но почему то без труда могу написать такую программу.

  4. Аватар
    Дима12464567

    Цитирую Влад Баринков:Цитирую Ильшат:Пожалуиста напишите мне програму:
    Найти все натуральные числа, не превосходящие заданного N и представимые в виде суммы квадратов двух каких-нибудь различных натуральных чисел.
    Дружище , если бы ты хоть немного посидел , то понял на сколько это же просто… Я ученик 9 класса , но почему то без труда могу написать такую программу.
    Кому нужен этот LT

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:
Нажимая на кнопку «Отправить комментарий», я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.