sonyps4.ru

Язык pascal программирование для начинающих. Язык Pascal (Паскаль)

Алгоритмизация и программирование являются одной из трудных для понимания учащимися тем в предмете информатика, а при наличии дефицита часов, выделяемых на изучение предмета, перед учителем встает довольно сложная задача «Как познакомить хотя бы с основами программирования всех учащихся, в том числе и непрофильных классов?». Между тем, как мы видим и в новых стандартах и в демо-версии ЕГЭ по информатике эта тема занимает существенное место. Предлагаемые ниже материалы помогают познакомить ребят с основными алгоритмическими конструкциями и реализацией их на языке программирования Паскаль и дать начальное представление о языке. Заинтересовавшиеся учащиеся могут в дальнейшем продолжить изучение языка программирования на спецкурсе.

Предлагаю задания к трем урокам: по линейному алгоритму, ветвлению и циклам. Типы переменных и структура программы на Паскале рассматриваются на предыдущих уроках.

Начальная подготовка учащихся.

  • Знание основных алгоритмических конструкций: линейный алгоритм, ветвление, цикл.
  • Знание основных типов переменных.
  • Знание структуры программы на Паскале.

Ход урока.

Перед каждым уроком учитель раскладывает на столах «Папки ученика», в которых находятся листы с заданиями, таблица «Реализация элементов блок – схемы алгоритма на языке Паскаль», «Алгоритм создания программы по шаблону» и другой справочный материал. Если предполагается создание программы по шаблону, т.е. ученики редактируют уже имеющуюся программу, то соответствующий файл *.pas с текстом программы должен находится на жестком диске в соответствующем каталоге.

Для знакомства с реализацией алгоритмической конструкции средствами языка используется сайт (см. Приложение1)

Обсуждается задание, проговаривается сценарий, составляется блок-схема алгоритма.

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

Описание приложений.

  • Адрес сайта «Паскаль для начинающих» - http://schools.keldysh.ru/gym1522/inform/pascal/ Немного сокращенный вариант находится в архиве (Приложение1.zip). Сайт выполнен с использованием флэш-технологии, позволяет в анимационной форме дать начальное представление о языке Паскаль 7.0 Для демонстрации надо разархивировать в каталог на жестком диске. Главная страница сайта – index.html
  • Тексты программ для создания программ по шаблону – файлы Приложение2.pas и Приложение3.pas. Их надо переименовать в Shablon1.pas и Shablon2.pas и поместить в соответствующий каталог на диске.

Использованная литература дана в Приложении 1 на сайте в разделе «ссылки».

Реализация элементов блок – схемы алгоритма на языке Паскаль.

Элемент блок схемы

В программе

Действия

Начало работы программы
(служебное слово)

Конец работы программы
(служебное слово)

На экране появляется надпись: введите A, B
(оператор вывода данных)
На экране появляется значение переменной C.
(оператор вывода данных)

WRITE (‘результат=’,S)

На экране появляется текст результат= и значение переменной S.
(оператор вывода данных)
Надо вводить два числа с клавиатуры
(оператор ввода данных)
C:=4*T ;
D:=A+B;
I:=I+1;
После выполнения операторов, переменным присваиваются следующие значения: C=4T, D=A+B, I=I+1 (операторы присваивания)
IF A>B THEN

BEGIN
ОП.1
END

BEGIN
ОП.2
END

Если условие A>B верно, то выполняется группа операторов ОП.1 , в противном случае – группа операторов ОП.2 (условный оператор)
WHILE I<=N DO

BEGIN
ОП.1
END

Пока будет выполнено I? N , выполняется группа операторов ОП.1
(оператор цикла с предусловием, ОП.1 – тело цикла)
REPEAT
ОП.1
UNTIL I>N
Выполняется группа опера-торов ОП.1 до тех пор, пока не будет выполнено условие I>N.
(оператор цикла с постусловием, ОП.1 – тело цикла)
FOR I:=1 TO N DO

BEGIN
ОП.1
END

Для каждого I от 1 до N выполняется группа операторов ОП.1
(оператор цикла с параметром, I – параметр цикла)

Линейный алгоритм. Простейшая программа (ввод/вывод данных, вычисление суммы, разности, произведения и частного двух чисел).

Для выполнения задания можно использовать приведенный ниже текст программы или заранее подготовленный учителем файл Shablon1.pas (файл Приложение2.pas) с текстом программы, который находится в каталоге CLASS (там же находятся личные папки учащихся). Ученик проставляет вместо вопросительных знаков необходимые операторы и служебные слова. Комментарии в фигурных скобках поясняют, что необходимо сделать. Программа состоит из двух частей. В первой части программы демонстрируется использование операторов ввода и вывода, во второй, после комментария {ЗАДАНИЯ}, ученику надо самому записать необходимые операторы, используя приведенную выше блок-схему и комментарии в программе. Алгоритм создания программы по шаблону дан ниже.

Текст программы по линейному алгоритму

{Объявление переменной S для ввода имени, надо указать тип переменной - строковый}

{Объявление переменных A и B для ввода чисел, надо указать тип переменных - целые числа со знаком}

{Объявление переменной C для вывода результата, надо указать тип переменной - все действительные числа}

{Начало раздела инструкций}

{Оператор вывода на экран сообщения (просьба ввести имя)}

WRITE ("Введите свое имя");

{Оператор ввода данных (значение переменной S = имя пользователя)}

{Вывод на экран сообщения (приглашения к работе) – слово "Привет" и значение переменной S (введенное пользователем имя)}

WRITELN ("Привет, ", S);

{ЗАДАНИЯ:}

{1)Запишите оператор вывода на экран приглашения к вводу 2 чисел (переменные A и В)}

{2) Запишите оператор ввода для переменных A и В}

{3) Запишите оператор присваивания для вычисления значения переменной С (сумма, разность, произведение, частное двух чисел)}

{4) Запишите оператор вывода на экран результата вычислений (сумма (разность, произведение, частное) = <значение переменной>}

Ветвление. Моделирование равномерного прямолинейного движения двух тел.

Построить компьютерную модель движения двух тел.

I. Найти скорость сближения (удаления) 2-х тел.

Рассмотреть случаи:

1. Тела двигаются в одном направлении.

2. Тела двигаются в противоположных направлениях.

  • Скорости вводятся с клавиатуры после вывода на экран соответствующего приглашения.
  • Направление движения каждого тела задаются буквами (L – влево, R – вправо)
Введите скорость 1 тела 10

Введите скорость 2 тела 5

Введите направление 1 тела L

Введите направление 2 тела R

Скорость равна 15

II. Добавить ввод начальных координат тел и определить сближаются или отдаляются тела.

III. Определить расстояние между телами через время t (ввести с клавиатуры).

IV. Выводить на экран текущие координаты тел.

V. Выводить на экран картину движения тел.

Примечания:
  • блок-схема и заготовка для программы даны для I;
  • II, III – повышенного уровня;
  • IV, V – после изучения темы «Циклы».

Текст программы на ветвление

{Объявление переменных V1, V2 и V для значений скоростей, тип переменных - целые числа со знаком }

VAR V1, V2, V: ??? ;

{Объявление переменных A1 и A2 для значений направлений, значения переменных - символы}

VAR A1, A2: ??? ;

{Начало раздела инструкций}

{Оператор вывода на экран сообщения (просьба ввести скорость первого тела)}

WRITE ("Введите скорость 1 тела");

{Оператор ввода данных (значение переменной V1)}

{Тоже для второго тела}

{Аналогично осуществить ввод направлений движения}

WRITE ("Введите направление 1 тела");

{Условный оператор: проверка условия равенства значений переменных A1 и A2}

IF A1 = A2 THEN V:= V1 - V2 ELSE V:= V1 + V2;

{Определение модуля вектора ABS – функция вычисление абсолютной величины}

{Оператор вывода на экран результата вычислений }

{Конец программы, конец раздела инструкций}

Текст программы находится в файле Приложение3.pas ( в кодировке MS DOS). Его надо переименовать в Shablon2.pas и можно использовать при создании программы по шаблону (см. алгоритм ниже).

Алгоритм создания программы по шаблону.

1. Войти в систему программирования Turbo Pascal 7.0.

2. Открыть файл ShablonK.pas (K - номер шаблона):

2.1. File -> Open

2.2. Перейти в каталог CLASS (в списке Files выбрать ..\)

2.3. Выбрать файл ShablonK.pas (K - номер шаблона)

2.4. Подтвердить выбор (Open )

3. Выполнить задание, заменяя ???? .

4.1. (File -> Save as)

4.2. Убедится, что находитесь в своем каталоге (нижняя строчка)

4.3. Ввести имя файла

4.4. Подтвердить сохранение (Ok )

5. Запустить программу (Run -> Run или Ctrl+F9 )

6. При наличии ошибок, внести изменения в программу и повторить пункт 5.

7. Просмотреть результат выполнения программы (Debug User Screen или Alt+F5 )

9. Выйти из системы программирования (File -> Exit или Alt+X )

Для циклического алгоритма уже текст программы не дается. Учащиеся должны сами составить программу по блок – схеме.

Циклы. Моделирование равноускоренного движения.

Паскаль - это язык программирования высокого уровня. Но он очень устарел морально. Потому что мир не стоит на месте. И другие языки, такие как: C# и Java имеют большую востребовательность и эффективность написания кода в отличии от Паскаля. Его изучают не столько для применения, как для обучения в учебных заведениях. Потому что он прост для понимания и нанести вред системе от некорректного кода пользователя не может. Я предоставил вам список уроков, по которым вы можете изучить его досконально.

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

Если же она у вас есть, то приступим к процессу обучения.

Пройдя все уроки вы получите примеры решения задач, представление о написании программ в целом, а также изучите язык программирования Turbo Pascal .

Разработал: профессор НТУ "ХПИ" Домнин Феликс Аркадьевич

Обычно, изучение любого языка программирования начинается с программы Hello, world! Но мы с вами займемся этим чуть попозже, потому что сейчас я хочу рассказать вам о величинах и типах данных в Pascal.

Виды величин

Обычно, изучение любого языка программирования начинается с программы Hello, world! Но мы с вами займемся этим чуть попозже, потому что сейчас я хочу рассказать вам о величинах и типах данных в Pascal. Что такое величина? Величина — это отдельный информационный объект, хранящийся в памяти компьютера. Существуют две классификации величин. Мы рассмотрим каждую в отдельности.


Более подробно мы поговорим о них в последующих уроках.

В свою очередь числовой делится на два типа.


Привожу сразу обозначение этого типа в Паскаль

Символьные тоже делятся на два типа.

Вторая классификация величин.
Константа — значение неизменно. Переменная — значение может меняться в течение работы программы. Переменные обозначаются символическими именами, которые называются идентификаторами. Как присвоить значение какой либо переменной? С помощью команды присваивания! Команда присваивания в Паскаль: < переменная >:= < выражение >

Первая программа на Pascal

Структура программы в Паскаль

Заголовок

Program < имя переменной >;

Объявление переменных и констант

const <Символическое имя> = <выражение>;
var <Однотипные переменные> : <тип>;

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

Begin
<оператор 1>;
<оператор 2>;

end.

Ввод и вывод в Паскаль

У вас, наверняка, возникает вопрос: «Как вводить значения переменных с клавиатуры?», а также: «Как вывести на экран полученный результат?». Для этого используются четыре специальных оператора:

Для ввода:

  • read(Переменную)
  • readln(Переменную)

И для вывода:

  • write(Текст в »)
  • writeln(Текст в »)

«В чем разница между read и readln, write и writeln?»: снова озадачитесь вы. Ответ прост. Если добавляете «ln» (что расшифровывается, как Line), то курсор переносится на следующую строку.

Hello, World на Pascal

Теперь вы готовы написать первую программу.

Program Hello_World; {фигурные кавычки позволяют вставить комментарий к коду} Begin Write("Hello, World!"); End.

Ну, тут все понятно. Чтобы разнообразить решение предлагаю решить несколько задачек этого типа.

Задача 1 . Требуется запросить имя пользователя, а затем вывести «Привет, <имя>!» Для решения этой задачи нам потребуется строковой тип данных — string.

Program Hello_boy_girl; {фигурные кавычки позволяют вставить комментарий к коду} var name: string; {объявляем name -- это новая переменная} Begin Write("Введите свое имя: "); {так как мы используем write, курсор будет мигать после двоеточия} Read(name); {Считываем все, что ввел пользователь} Write("Привет,", name,"!"); {Обратите внимание! Переменная отделяется от кавычек ЗАПЯТЫМИ!} End.

Задача 2. Требуется узнать сколько лет пользователю, а затем вывести «Вам <возраст> лет». Очевидно, что для решения этой задачи нам потребуется целочисленный тип данных — Integer.

Program How_old_are_you; var years: integer; {объявляем years -- это новая переменная} Begin Writeln("Сколько вам лет?"); {так как мы используем writeln, каретка будет мигать под надписью} Read(years); {Считываем все, что ввел пользователь} Write("Вам ", years," лет."); End.

Ну, вот и все! Все, что я хотел рассказать вам в сегодняшнем уроке. Вы узнали, что такое величина в Pascal, и выучили основные типы. А также научились создавать простейшие линейные программы. Более подробно про типы в PascalABC.Net мы поговорим в следующих уроках. Кстати, про PascalABC.Net. Понятно, что писать программы на листочках бесполезно, и вы должны тренироваться на компьютере. По этой ссылке скачайте последнюю версию для Windows.
Вот, как выглядит интерфейс программы при запуске.


P.S. Давайте выделим две особенности Pascal:

  1. Паскаль НЕ чувствителен к регистру, то есть и program, и Program, и PrOgRaM для него ничем не отличаются. А потому с самого начала привыкайте писать в нижнем регистре, чтобы при переходе на другой язык программирования не испытывать никаких проблем с этим;
  2. Имя программы в Pascal не играет никакого значения, оно не несет в себе никаких полезных функций. Если хотите вы можете просто не писать ЕГО!

P.P.S. В мире наиболее популярны три операционные системы: Linux, Mac OS и Windows. А если у вас не Windows? Какой компилятор выбрать тогда? Об этом мы с вами поговорим в уроке номер N.

Министерство образования и науки Российской Федерации

Государственное образовательное учреждение

высшего профессионального образования

«Омский государственный технический университет»

Ю. П. Чернов, О. П. Шафеева

Программирование в системе Pascal abc

Учебное пособие

Издательство ОмГТУ

УДК 004.4 (075)

ББК 32.973-018я73

Рецензенты :

В. И. Стариков, канд. техн. наук, доцент ОГИС;

С. С. Ефимов, канд. техн. наук, доцент ОмГУ им. Ф.М. Достоевского

Чернов, Ю. П.

Ч 49 Программирование в системе Pascal ABC : учеб. пособие / Ю. П. Чернов, О. П. Шафеева. – Омск: Изд-во ОмГТУ, 2010. – 100 с.

ISBN 978-5-8149-0897-1

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

Учебное пособие предназначено для изучения языка программирования высокого уровня Паскаль в дисциплинах «Информатика», «Основы алгоритмизации и программирования», «Алгоритмические языки и программирование», «Программирование на языке высокого уровня».

Печатается по решению редакционно-издательского совета Омского государственного технического университета

УДК 004.4 (075)

ББК 32.973-018я73

ISBN 978-5-8149-0897-1 © ГОУ ВПО «Омский государственный

технический университет», 2010

Введение

Наиболее распространенным в настоящее время языком программирования для компьютеров серии IBM PC является Паскаль. Это язык высокого уровня, отличающийся простотой синтаксиса, структурированный и удобный для начального обучения программированию.

Учебная система программирования Pascal ABC (автор  С.С. Михалкович ) представляет собой диалект стандартного языка Паскаль.

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

К достоинствам системы Pascal ABC следует отнести то, что она позволяет:

    программировать на языке Паскаль, подобном Delphi Pascal, включая объектно-ориентированные расширения;

    работать с графикой;

    создавать событийные приложения.

Система Pascal ABCоснована на языке Delphi Pascal и призвана осуществить постепенный переход от простейших программ к модульному, объектно-ориентированному, событийному и компонентному программированию. Некоторые языковые конструкции допускают, наряду с основным, упрощенное использование, что позволяет использовать их на ранних этапах обучения.

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

Компилятор Pascal ABCявляется компилятором переднего плана (front- end). Это означает, что он не генерирует исполняемый код в виде.exe -файла, а создает в результате компиляции дерево программы в памяти, которое затем выполняется с помощью встроенного интерпретатора. В итоге скорость работы программы оказывается медленнее скорости работы этой же программы, откомпилированной в среде Borland Pascal или в среде Borland Delphi. Однако на современных компьютерах это практически не ощущается.

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

Система Pascal ABC включает в себя как язык программирования, так и инструментальную среду, предназначенную для написания, отладки и исполнения программ. Язык характеризуется расширенными возможностями по сравнению со стандартом языка Паскаль и хорошо развитой библиотекой модулей, позволяющих использовать возможности операционной системы, формировать графическое изображение и т.д. Инструментальная среда программирования позволяет создавать тексты программ, компилировать их, находить ошибки и оперативно их исправлять, тестировать и выполнять отлаженную программу. Среда включает также большой объем справочной информации.

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

Пособие подготовлено с учетом опыта чтения лекций и проведения авторами лабораторных занятий в компьютерном учебном центре ОмГТУ. В первую очередь пособие предназначено для студентов университета и представляет теоретическое руководство по программированию как в среде Pascal ABC, так и в средах Free Pascal и Turbo Pascal.



Загрузка...

Построить модель равноускоренного движения тела (X=X 0 +V 0 t+At 2 /2).

I.. Тело двигается по прямой. Выводить на экран координату тела через каждые 10 секунд движения.

Исходные данные (задаются с клавиатуры):

1. Начальная скорость тела (V0, м/с ).

2. Ускорение тела со знаком (A, м/с 2 ).

3. Начальное положение тела (X0 , м ).

4. Время движения (TK, с ).

Расчетные данные (выводятся на экран):

1. Текущее положение тела (X, м ).

2. Текущее время движения (T, с ).

Примерный вид экрана при работе

Введите скорость тела 10

Введите ускорение тела 2

Введите нач. положение тела 0

Введите время движения тела 200

T = 0 X = 0Writeln (‘T = ‘,T,’ X = ‘,X) ;

T:=T+10; end;

X:=X0;

X:=X0+V0*T+A*T*T/2;

Writeln (‘T = ‘,T,’ X = ‘,X) ;

Until T>=TK;

X:=X0; T:=0; N:=Trunc(TK/10);

For i:=0 to N do

X:=X0+V0*T+A*T*T/2;

Writeln (‘T = ‘,T,’ X = ‘,X) ;

Язык программирования Turbo Pascal является развитием языка Pascal, разработанного Никлаусом Виртом в 1969-71 годах, для обучения структурному программированию. Фирма Borland International, существенно расширила алгоритмические средства языка, создала удобную среду программирования и высокоскоростной компилятор.
Turbo Pascal разрабатывался под операционную систему ДОС (Дисковая Операционная Система), поэтому он работает только в текстовом режиме. Среда разработки Turbo Pascal (версия 7) представляет из себя текстовый редактор и средства отладки и компиляции программы. Для переключения редактора из оконного в полноэкранный режим и обратно следует нажать одновременно клавиши Alt + Enter.

Программа на Pascal пишется в текстовом редакторе по определённым правилам. Текст программы проверяется редактором кода. Зарезервированные слова языка и определённые синтаксические конструкции выделяются цветом, что создаёт определённые удобства.

Линейный алгоритм. Типы числовых данных. Функции ввода - вывода.

Простые программы пишутся последовательно, шаг за шагом до тех пор, пока не будет получено решение задачи. Такая линейная последовательность в программировании называется линейным алгоритмом . Рассмотрим программу простого калькулятора. Пусть нам нужно сложить, вычесть, умножить и разделить два числа X и Y. В большинстве языков программирования принято объявлять участвующие в программе переменные. Это нужно для того, что бы зарезервировать фрагмент оперативной памяти компьютера для хранения объявленных данных. На рисунке показана программа калькулятора:


Рассмотрим построчно, что означают введённые в редакторе команды:
  • uses crt; - Выражение: Использовать модуль CRT. В начале программы, обычно, пишется директива uses и затем, через запятую, перечисляются модули содержащие набор необходимых функций для работы программы. CRT - модуль поддержки монитора и клавиатуры. (Важное замечание. Регистр букв текста программы не имеет значения. Так, например, можно написать uses crt; или Uses CRT; - программа будет работать и не воспримет это как ошибку). Любое выражение на Pascal должно заканчиваться знаком "точка с запятой".
  • var - (сокращённое от variable - переменная) объявления блока переменных. После команды var точка с запятой не ставится.
  • x, y, z1, z2, z3, z4: real; - перечисляем через запятую переменные необходимые для решения задачи; x и y - вводимые данные для вычислений; z1 ... z4 - переменные для хранения результатов вычислений. Двоеточие и real означает, что все перечисленные переменные объявлены как тип данных - число с плавающей запятой.
    При программировании используются различные типы данных. Ниже представлены числовые типы данных:
  • Begin - собственно начало программы. Оператор begin называется операторной открывающейся скобкой. После оператора begin точка с запятой не ставится.
  • Clrscr; - процедура очистки экрана. Эта процедура встроена в модуль CRT. В фигурных скобках {clear screen} написан комментарий к программе.
  • Write("Wwedite X: "); - функция write выводит на экран сообщение. Выводимое сообщение является аргументом функции write. Если сообщение текстовое, то оно заключается в одинарные кавычки (апострофы). К сожалению Turbo Pascal не поддерживает символы кириллицы, поэтому сообщение пришлось написать латинским шрифтом.
  • Readln(x); - функция readln получает данные с клавиатуры вводимые пользователем. При появлении этой функции в исполняемой программе, действие программы приостанавливается и она ожидает ввода данных до нажатия клавиши Enter. Сама функция readln состоит из двух частей: read - собственно чтение с клавиатуры (может использоваться самостоятельно); окончание ln - означает (line new) новая строка, после выполнения чтения с клавиатуры переводит курсор на новую строку.
    Следующие две строки в точности повторяют две предыдущие, только выводится сообщение для ввода переменной Y и чтение этой переменной с клавиатуры.
  • z1:= x + y; - вычисляем сумму аргументов х и у. Знак:= означает переменной z1 присвоить значение суммы х и у.
  • z2:= x - y; - вычисляем разность аргументов х и у.
  • z3:= x + y; - вычисляем произведение аргументов х и у.
  • z4:= x + y; - вычисляем частное от деления аргументов х и у.
  • Writeln(z1) - так же, как и оператор write выводит сообщение на экран, ln - означает, что следующее сообщение будет выводиться с новой строки. Так как переменная z числового типа, то апострофы ставить не нужно. Итак, функции Writeln(z1); Writeln(z2); Writeln(z3); и Writeln(z4); выводят на экран все значения z в столбик.
  • End. - оператор конца программы. После end (операторная закрывающаяся скобка, парная оператору begin) ставится точка. Точка является признаком конца файла.
        Что бы убедиться в правильности написания программы следует нажать клавишу F9. Произойдёт компиляция программы и проверка синтаксиса. Если код написан верно, то увидим следующее сообщение:


    Если компилятор обнаружит ошибку, то появится соответствующее сообщение, а курсор будет установлен в строку с ошибкой.


    В нашем случае строка z4 = x / y; - должно быть z4:= x / y;
    Для запуска программы на исполнение, следует нажать комбинацию клавиш Ctrl и F9. В программе следует ввести значение х и нажать Enter, затем ввести значение у и опять нажать Enter. Компьютер произведёт необходимые вычисления и выведет значения на экран, но мы, скорее всего, ничего не увидим, потому что выполнение программы закончится и произойдёт возврат в редактор. Для просмотра полученных результатов следует нажать одновременно Alt и F5.


    То, что мы видим на экране не совсем удобно для понимания. Лучше будет, если результаты отображать не экспоненциальном виде, а в нормальном, десятичном.
    Так же, пользователь программы вынужден догадываться в какой строке результатов сложение, в какой умножение и так далее. Для исправления ситуации изменим строки вывода результатов на экран:
    writeln("X + Y = ", z1:0:4);
    writeln("X - Y = ", z2:0:4);
    writeln("X * Y = ", z3:0:4);
    writeln("X / Y = ", z4:0:4);
    Рассмотрим любую из изменённых строк, например writeln("X / Y = ", z4:0:4); Функция вывода writeln в качестве аргумента (в нашем случае) принимает два значения. Аргументы друг от друга отделяются запятой.
    Первое значение: "X / Y = " - надпись которая будет выводиться на экран, она должна быть заключена в апострофы. Второе значение - число z4. Для придания числу десятичной формы отображения, оно отформатировано по следующей схеме: двоеточие - число знаков до запятой, двоеточие - число знаков после запятой. Если число знаков до запятой неизвестно, то лучше поставить ноль.
    Усовершенствованная программа принимает удобочитаемый вид:


    До оператора end можно ввести строку readln;, тогда программа не будет завершаться сразу после выполнения, а будет ожидать нажатия клавиши Enter. Для сохранения готовой программы следует нажать F2 и сохранить файл с именем, например, calc.pas.

    Логические операторы. Символьные переменные.

    При выполнении написанной программы могут возникнуть непредвиденные обстоятельства, а именно, если пользователь программы вторым числом введёт значение 0 (нуль). Как известно, деление на 0 запрещено и при выполнении программы компьютер выдаст такое сообщение:


    Что бы избежать таких ситуаций, программист должен предусмотреть в программе некоторую защиту.
    Самое простое решение, в нашем случае, при значении Y равном нулю, перейти к началу программы, что бы пользователь ввёл другие значения. Перечислим те действия, которые должна выполнить программа:
    - если Y равно 0 то перейти к метке в начале программы, иначе (Y не равен 0) выполнить математические действия.
    На языке Pascal это будет выглядеть так: if y = 0 then goto label1 else ...
    Эта запись означает: (if) если y = 0 (y = 0 - логическое выражение) then (то) goto (перейти к) label1 (имя метки) else (иначе) ... Оператор else можно не использовать если дальнейшее выполнение программы подразумевается при невыполнении условия логического выражения. Метка label1 придуманное имя метки, поэтому мы должны его объявить до начала программы, сразу за разделом объявления переменных. Сама метка устанавливается в том месте программы, куда должен осуществиться переход. После имени метки ставится знак двоеточие. Изменённая таким образом программа показана на рисунке:


    Такая программа имеет более "товарный" вид и свойства.
    Рассмотрим подробно какие конструкции можно создавать на языке Pascal с использованием логических операторов. В общем виде логическая запись выглядит так:
    if (условие) then (действие1) else (действие2);
    или
    if (условие) then (действие);
    Сначала рассмотрим запись условий:

    Логические связки записываются между логическими условиями, сами условия берутся в скобки, например: if (a = b) and (z Следует иметь в виду что при выполнении условия, после оператора then может быть только одно действие. Если действий по условию программы должно быть больше, то все действия должны быть взяты в операторные скобки begin ... end.
    Например:
    if a = b then
      begin
      writeln("Error!");
      y:= 22;
      goto label1;
    end else ...
    Аналогичным образом несколько действий записывается после оператора else.
        Написанная нами программа "калькулятор" имеет один существенный недостаток, если нужно произвести несколько вычислений, приходится перезапускать программу на выполнение. Изменим нашу программу так, что бы она завершалась с согласия пользователя. Пользователю следует предложить нажать клавишу Y для продолжения работы с программой, или любую другую клавишу для завершения работы.
    Заменим последний в программе оператор readln; на такие строки:
      write("Repeat - Y / End - other key"); {Выводим сообщение для пользователя}
      readln(sym); {Считываем символ с клавиатуры}
      if (sym = "Y") or (sym = "y") then goto label1; {Если введён символ Y или y , то переходим к началу программы}
    В нашей программе появилась новая переменная - sym (вымышленное имя, которое придумываем мы сами. Имя должно начинаться с буквы, а затем могут следовать цифры или буквы). Эта переменная имеет тип одиночного символа и мы должны её объявить в разделе переменных. Символьные переменные имеют тип char. Символьные переменные при использовании в программе следует заключать в апострофы.
    Добавим эту переменную в разделе var:
    var
    sym: char;
    .............
    Запустим программу на исполнение, и убедимся, что программа написана правильно:


    В паскале есть ещё один тип символьных переменных, это тип string - строка состоящая максимум из 255 символов, но об этом в следующих разделах.

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