Программы turbo pascal как составить программу

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

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

Содержание

  1. Теория по языку Turbo Pascal
  2. Структура системы программирования Turbo Pascal
  3. Рассмотрим основные приемы работы с редактором кода программы
  4. Прогон и отладка программы
  5. Справочная информация Turbo Pascal
  6. Ваша первая программа на Turbo Pascal
  7. Типы данных

Теория по языку 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 на экране появится окно, которое сожержит отсортированный по алфавиту список стандартных процедур, функций, типов, констант и переменных, для которых можно получить необходимую справочную информацию.

Курс по SQL для начинающих

Эту же информацию можно получить и по-другому. Напечатайте на экране имя процедуры (функции, типа и т.д.) или подведите курсор к имеющемуся в тексте стандартному имени и нажмите 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. Как видите этот язык отлично подходит для начинающих и если Вас заинтересовало, то изучайте подробней этот язык.

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

Мы не будем использовать Turbo Pascal через оболочку MS-DOS, мы люди современные, и будем использовать онлайн WEB-среду разработки PascalABC.NET по следующему адресу http://pascalabc.net/WDE/

Вот как она выглядит:

1.3 Структура программы в Turbo PascalВам будет интересно:1.3 Структура программы в Turbo Pascal

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

Для начала объявим переменные a и b, и присвоим им тип данных integer следующим образом:
var a,b:integer;
Ниже откроем нашу главную конструкцию
Beggin
End.

В итоге мы получаем:
var a,b:integer;
Beggin
End.

Теперь в нашей основной конструкции выведем текст с назначением нашей программки:
writeln('Программа деления а на b');

Ниже сообщим пользователю, что нужно ввести значение переменных
writeln('Введите значение а и b');

Теперь используем оператор ввода readln(); для ввода значений:
readln(a,b);

Теперь нам нужно поделить а на b и вывести результат на экран, для этого мы воспользуемся оператором вывода writeln():
writeln('а поделить на b равно ',a/b);

Код всей нашей программы сейчас такой:
var a,b:integer;
begin
writeln('Программа деления а на b');
writeln('Введите значение а и b');
readln(a,b);
writeln('а поделить на b равно ',a/b);
end.

Нажимаем выполнить и если не было пропущено никаких знаков и допущено других ошибок, то получаем сначала результат
Программа деления а на b
Введите значение а и b
Потом программа ожидает вода значения пременных, вводим к примеру 4 и 2, нажимаем ввести и программа нам выводит:
4 2
а поделить на b равно 2

Мы знаем, что на ноль делить нельзя, и если b будет равняться нулю, то считать нет смысла, и нужно просто вывести текс «На ноль делить нельзя»

Для этого мы после readln(a,b); добавим условие, где b будет проверяться на ноль и если оно равно нулю, то будет выводиться текст «На ноль делить нельзя», а если b не равно нулю то считает и выводит результат.

В итоге у нас получится следующий код:
var a,b:integer;
begin
writeln('Программа деления а на b');
writeln('Введите значение а и b');
readln(a,b);
if (b=0) then
begin
writeln('На ноль делить нельзя');
end
else begin writeln('а поделить на b равно ',a/b);
end;
end.

Результатом выполнения которой будет, если задать значение 4 и 0:
Программа деления а на b
Введите значение а и b
4 0
На ноль делить нельзя

Пишем программу для решения квадратного уравнения

Нам нужно объявить три переменных a, b, c еще дискриминант d и x1,x2 которые появятся у нас в процессе вычисления
Для этого пропишем:
var a,b,c,d:integer;
x1,x2:real;

Открываем нашу основную конструкцию
Begin
End.

Выводим название программы и текст с просьбой ввести коэффициенты.
writeln('Программа решения квадратного уравнения');
writeln('Введите коэффициенты a, b, c');

Оператор для ввода значений
readln(a,b,c);

Теперь пишем формулу нахождения дискриминанта
d:=b*b-4*a*c;

Теперь формулу нахождения x1:
x1:=(-b+sqrt(d))/(2*a);

Теперь формулу нахождения x2:
x2:=(-b-sqrt(d))/(2*a);

Теперь выведем результат:
writeln('Ответ: x1 = ',x1,' x2 = ',x2);

Проверяем работу нашей программы, вводим к примеру значения 2 4 2 и в ответ получаем:
Программа решения квадратного уравнения
Введите коэффициенты a, b, c
2 4 2
Ответ: x1 = -1 x2 = -1

Мы знаем, что если дискриминант будет меньше нуля, то уравнение не имеет решений, а значит в этом случае нет смысла программе пытаться решить это уравнение, для этого мы добавим условие, и если дискриминант равен нулю, то у нас будет только значение только x1.
var a,b,c,d:integer;
x1,x2:real;
begin
writeln('Программа решения квадратного уравнения');
writeln('Введите коэффициенты a, b, c');
readln(a,b,c);
d:=b*b-4*a*c;
if (d<0) then writeln('d<0 Нет решения') // если d меньше нуля то выводим текст
else if (d=0) then // Если d равно нулю, то выполняем следующую конструкцию, если не равно то перескакиваем ее
begin
x1:=-b/(2*a);
writeln('x1 = ',x1);
end
else begin //если d не равно нулю то выполняем эту конструкцию
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
writeln('x1 = ',x1,' x2 = ',x2);
end;
end.

Содержание:
1. Turbo Pascal Введение теория и основы.
1.1 Типы данных в Turbo Pascal
1.2 Основные определения и операторы в Turbo Pascal
1.3 Структура программы в Turbo Pascal
2 Практика
2.1 Практика Создание простой программы Turbo Pascal

Пишем первую программу

В этом посте мы напишем с Вами первую программу на языке Турбо-Паскаль, и полностью разбирём её. А так-же установим сам язык программирования паскаль на Windows 10.

Скачиваем и устанавливаем приложение

Скачать Turbo Pascal для Windows 10,8,7,XP:

Версия x32:

Скачать “Версия x32 | Turbo Pascal 7.1”

turbo_pascal7.1×32.rar – Загружено 21820 раз – 1,70 МБ

Версия x64:

Скачать “Версия x64 | Turbo Pascal 7.1”

turbo_pascal7.1×64.rar – Загружено 64932 раза – 3,78 МБ

Когда вы выбрали нужный вам файл, его нужно установить:

  1. Распаковываем архив.
    • Для системы x32: установочного файла нет — после извлечения архива, зайдите в папку BIN и запускайте Turbo.exe.
    • Для системы x64: после распаковки — запустите установочный файл. Turbo Pascal установится на вашу систему — на рабочем столе появится ярлык для запуска программы.
  2. Установка завершена.

Вы можете скачать сборку (среда программирования и задачник) PascalABC.NET которая до сих пор поддерживается и обновляется.

Скачать “PascalABCNET”

PascalABCNETSetup.zip – Загружено 5307 раз – 19,21 МБ

Более подробно об этой вресии можно почитать на сайте авторов.

Ничего сложного, как видите нет. После установки Turbo Pascal, мы можем начать писать нашу первую программу.

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

Пример 1

PROGRAM Prog1;

uses Crt;

var

Name: string[20];

BEGIN

ClrScr;

write(‘Введите, пожалуйста, Ваше имя: );

readln(Name);

writeln(‘Здравствуйте, , Name);

readln;

END.

Что же делает эта программа?

Для того чтобы узнать это, нужно откомпилировать ее и запустить. Посмотрите на строку подсказки и Вы сразу же вспомните, что откомпилировать программу можно нажав клавишу F9 (или Alt+F9). Откомпилируйте сей шедевр, сохраните его на всякий случай (F2) и запустите на выполнение. Запустить программу можно через меню Run|Run или нажав клавишу Ctrl+F9.

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

Чтобы вернуться к окну с текстом программы, нажмите Enter.

Первая порграмма написанная на языке программирования TurboPascal

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

Разберём нашу первую программу на Паскаль

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

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

Первая строка заканчивается разделителем точкой с запятой. Этот разделитель в языке Турбо-Паскаль показывает конец оператора или описания. Использование разделителя позволяет помещать в одной строке несколько различных операторов, но делать это не рекомендуется во избежание лишних ошибок.

Вторая строка программы содержит объявление используемых модулей. Модуль – это дополнительный файл, который содержит процедуры, выполняющие действия, не предусмотренные стандартными операторами языка. В данной программе, например, для очистки экрана используется процедура ClrScr из модуля Crt. Позднее мы будем использовать и другие процедуры из этого модуля, а также процедуры из других модулей. Их описание будет рассматриваться далее.
Обратите внимание на то, что зарезервированное слово uses должно следовать сразу же за объявлением имени программы или, если таковое отсутствует, в самом начале программы.

В третьей строке Вы видите единственное слово var, означающее, что далее будут описаны одна или несколько переменных. Переменными в языке называют «ячейки» памяти, которые могут хранить какоенибудь значение. Описать переменную в Турбо-Паскале – значит указать ее имя и тип.

В следующей строке программы описана переменная по имени Name. После двоеточия указан ее тип: string[10]. Это означает, что в программе будет использоваться переменная Name является строкой из десяти символов.

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

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

  1.  Оператор

    на самом деле является процедурой, которая находится в модуле Crt. Как было сказано выше, эта процедура выполняет очистку экрана.

  2.  Оператор

    write(‘Введите, пожалуйста, Ваше имя: );

    выводит на экран монитора сообщение, указанное в скобках. Обратите внимание на то, что сообщение должно быть заключено в одинарные кавычки.

  3. В следующей строке осуществляется ввод значения переменной Name с помощью оператора readln:

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

  4. writeln в паскале это:

    writeln(‘Здравствуйте, , Name);

    также как и описанный выше оператор write, выводит сообщение на экран монитора. Но в данном случае сообщение состоит уже из двух частей (вообщето, их может быть сколько угодно): текста ‘Здравствуйте, ’ и того текста, который ввел пользователь в предыдущей строке программы (содержимого переменной Name). В нашем случае переменная Name содержит строку символов ‘Александр’, и в результате выполнения этого оператора на экран выводится сообщение ‘Здравствуйте, Александр’.

  5.  Последний оператор программы

    является маленькой хитростью. Как Вы, вероятно, заметили, этот оператор аналогичен оператору, с помощью которого мы вводим значение переменной. Но в данном случае переменная не указана. Чего же тогда ожидает этот оператор? Все очень просто: этот оператор ждет, когда пользователь введет хоть чтонибудь, ну или просто нажмет Enter. Попробуйте удалить его. И запустите программу. Сразу же после ввода имени Вы окажетесь в окне редактора: программа отработала, сделала все, что должна была и вернула нас туда, откуда мы вышли. Чтобы просмотреть теперь результаты работы программы, нужно нажать Alt+F5. А можно сделать проще: заставить программу не заканчиваться, пока мы не нажмем Enter. Тут-то нам и помог этот замечательный оператор.

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

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

Результаты работы измененной программы примера №1

Запомните! Любая программа содержит два раздела: раздел описаний и раздел операторов.

PROGRAM Prog1;

  { Раздел описаний }

BEGIN

  { Раздел операторов }

END.

Слова PROGRAM, BEGIN и END выделяют эти две части в программе. При этом объявление имени программы в первой строке не является обязательным. Чего нельзя сказать о словах BEGIN и END.

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

Все объекты, используемые в программе (переменные, модули и т.д.) должны быть сначала описаны в разделе описаний. Если в программе не используются никакие объекты, то раздел описаний будет отсутствовать. Получается, что самая короткая программа на языке Турбо-Паскаль выглядит так:

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

Понравилась статья? Поделить с друзьями:
  • Как составить сценарий для продаж
  • Как найти свой вебинар
  • Как найти аналог транзистора аналоги
  • Как составить сочинение по картине 5 клаас
  • Как найти апофему конуса