Как работать в программе pascal abc. Как написать простую программу в Паскаль abc

Допустим, что вы скачали и установили паскаль. Затем откройте его. Для программирования вам надо небольшое знание английского языка. Суть нашей программы в том, чтобы она складывала любые числа. Для этого нам нужны переменные. Чисел у нас будет 2. Но в каждой задаче, даже в самой простой, есть ответ. Значит добавляем 3 переменную.

2 шаг

И так. Чтобы оформить наши переменные перейдите на английский язык и напишите в начале программы слово “var”. А после через запятую наши 3 переменные, а, в, с, и через двоеточие поставьте тип “integer” Далее напишите begin – начать.
На данном этапе программа будет выглядеть так:

var a,b,c:integer;
begin

3 шаг

Ну а далее сама программа! Мы сделаем так, чтобы при начале работы, наша программа запрашивала ввести значение наших переменных. Для этого пишем английское слово прочти "read " и в скобках укажите какие именно надо прочесть переменные.
read(a,b);
Потом как в математике пишите формулу. Только обязательно перед равно должно быть двоеточие! c:=a+b;
Потом нам надо, чтобы программа выводила ответ: write©;
ну вот и все! заканчиваем програмку и пишем end.
Наша программа выглядит так:
var a,b,c:integer;
begin
read(a,b);
c:=a+b;
write©;
end.
Можете кстати скопировать эту программку в паскаль, и проверить или напишите ее сами.
После запуска программа запросит ввод, числа вводите через пробел!

Рассмотрим простейший пример программы на языке Pascal ABC.NET. Изначально я думал дать более сложный пример на рассмотрение, но понял, что его придется слишком долго Вам обьяснять, поэтому мы рассмотрим стандартный пример "Hello World!".

Program Pascal; begin writeln("Pascal ABC.NET"); end.

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

Program Pascal; begin writeln("Pascal ABC.NET"); end.

Единственное ограничение к такому коду (в одну строку) это наличие пробелов между коммандами (в данном примере это пробел между begin и writeln), а пробел между новой строкой и строкой, заканчивающуюся на ";" не обязателен. Тоесть допустим следующий код:

Program pascal;begin writeln("Pascal ABC.NET");end.

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

PROGRAM PASCAL; BEGIN WRITELN("Pascal ABC.NET"); END.

Абсолютно эквивалентен предыдущему коду.

Теперь начнем анализировать сам код. Код начинается со слов "Program Pascal;". Слово "Program" указывает об обьявлении названия программы, что в моем случае случае это "Pascal". Это название может быть каким угодно (только нельзя брать зарезервированные имена они приведены в данной таблице), да и вообще эта строка является необязательной, поскольку никак это в дальнейшем не используется, поэтому можно писать свои коды и без нее (что я и буду делать в дальнейшем).

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

Все, что находится между ""Program" и первым "begin", находится в секции, называемой "Секцией описания". В ней можно создавать свои подпрограммы (об этом чуть позже), описывать переменные или постоянные. А самый первый "begin" и "end." Ограничивают секцию операторов, в которой и находится, собственно, код всей нашей программы. Данный пример можно было бы сделать чуть более гибким:

Program Pascal; const my_text="Pascal ABC.NET"; begin writeln(my_text); end.

Здесь я в секции описания создал переменную с постоянным значением (константу) с помощью слова "const", за которым должно идти описание одной или нескольких констант. Описав какую-либо константу в языке программирования, Вы сможете пользоваться ее значением где угодно (в пределах данной программы), но при этом Вы не сможете изменить ее значение. В некоторых случаях это очень удобно. Например, значение числа Pi, равное 3.14... Очевидно, при расчете каких-либо геометрических формул ей очень удобно пользоваться. И это значение должно быть одним и тем же в не зависимости от внешних факторов (Страны, где Вы проживаете; времени года; времени суток...). Поменяв значение данной константы, Вы будете получать некорректные значения в геометрических формулах. А это неправильно. Поэтому и придумали в языках программирования константы. Их нужно описывать в секции описания и использовать их в своем коде. При этом во время сборки готовой программы, везде вместо имени данной константы будет подставлено ее значение. Вы можете подумать, что это глупо писать везде имя данной константы, если все равно оно будет заменено на ее значение. Не проще ли сразу писать ее значение?

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

Const Mytext="Я люблю язык Pascal ABC.NET, и поэтому создаю сайт, где Вы можете обучиться етому языку";

И везде, где нужно, удобнее писать название данной константы "Mytext", а не это длинное предложение.

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

Var f:text; i:integer; begin assign(f, "data.bat"); reset(f); read(f,i); i:=(i*10 - 125)*(-1); close(f); assign(f, "data.bat"); rewrite(f); write(f,i); close(f); end.

Скорее всего вы почти ничего в этом коде не поняли (я не хотел приводить этот пример, но для большей понятности решил его привести). Вы сейчас можете не вникать в данный код (поскольку я писал его наугад). Этот код открывает файл "data.bat", считывает из него значение, преобразует это значение и обратно записывает в этот файл новое значение. Но не суть. Вы можете увидеть в данном коде строки "assign(f, "data.bat");" Вданном примере их 2 строки. Если вдруг измениться имя файла, то нам придется переписывать эти две строки. А представьте, если таких строк будет тысячи. Их всех придется переписывать. Именно для этой причины ввели переменные и константы.

Вернемся к первому коду. Описать константу в языке программирования - это значит указать ее имя и ее значение. То есть в примере:

Const my_text="Pascal ABC.NET";

Имя константы "my_text", а ее значение это "Pascal ABC.NET". Возможно, у Вас появилось чувство, что константам можно придавать значения только строк, но это не так:

Const my_Pi=3.1428;

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

В нашем примере в разделе операторов содержится только один оператор "writeln("Pascal ABC.NET");". Комманда "writeln" является подпрограммой (с ними мы познакомимся чуть позже), которая на экран выводит все то, что содержится в ее скобках (В нашем случае программа выведет на экран "Pascal ABC.NET").

Завершает всю программу слово "end.". Этот набор символов указывает на конец программы. Все, что идет за этой коммандой не выполняется.

Обычно, изучение любого языка программирования начинается с программы 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.

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

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

Уроки Pascal ABC

Представленные в видеокурсе уроки Паскаль АБС основаны на разработке прикладных программ и дают практические знания. Все программы, которые вы напишите в процессе прохождения видеокурса, полностью рабочие и их можно использовать в повседневной жизни – «воды» и пустой теории в курсе нет.

Осваиваем интерфейс редактора и пишем свои первые строчки кода.


Изучаем логику работы с числами и конструируем таймер.


Изучаем, как язык программирования компилирует исходный код.



Используем Паскаль для нахождения решения задачи про школьницу Анну.


Программируем настоящий виртуальный музыкальный синтезатор.


Осваиваем сложные математические функции и создаём полноценный инженерный калькулятор.



Создаём «правильную» телефонную книгу на основе базы данных.


Урок 1 - Первая программа
Урок 2 - Простые числа
Урок 3 - Компиляторы (Часть 1)
Урок 3 - Компиляторы (Часть 2)
Урок 4 - Решение школьной задачи
Урок 5 - Создание пианино
Урок 6 - Продвинутый калькулятор (Часть 1)
Урок 6 - Продвинутый калькулятор (Часть 2)
Урок 7 - Удобная телефонная книга (Часть 1)
Урок 7 - Удобная телефонная книга (Часть 2)
Урок 7 - Удобная телефонная книга (Часть 3)
Урок 7 - Удобная телефонная книга (Часть 4)
Урок 8 - Работа с графикой. Система частиц (Часть 1)
Урок 8 - Работа с графикой. Система частиц (Часть 2)
Урок 8 - Работа с графикой. Система частиц (Часть 3)
Урок 8 - Работа с графикой. Система частиц (Часть 4)

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

✎ 1) program – по-английски «программа», пишется в самом начале кода, после чего идет название программы латиницей и точка с запятой. Например: program Summa; − программа под названием Summa. Но эту часть кода, называемую заголовком программы, можно и не писать − она присутствует только для наглядности и показывает, какую задачу решает данная программа. Здесь мы употребили слово «код» − так называется текстовая запись программы.

✎ 2) integer – по-английски означает «целое число» (или просто «целое») и в Паскале используется для обозначения 32-битных (8 байт) целых чисел со знаком с диапазона [-2147483648, 2147483647] . Что означают эти большие числа, мы потом разберем.

✎ 3) real – с английского «реальный», «настоящий», «вещественный», «действительный». В языке Паскаль этим термином обозначаются вещественные числа с диапазона [-1.8∙10 308 , 1.8∙10 308 ] . Это очень большие числа, но значащих цифр выводится 15 – 16. Кстати, типы данных integer и real в среде программирования PascalABC.Net всегда автоматически выделяются синим цветом.

✎ 4) const – аналог англ. «constant», означающее «постоянная», «константа». В Паскале это величина, которая не может изменяться. Записывается так:


Эту запись надо воспринимать так, как она пишется: число N равно 12, S равно 5, «пи» равно 3,14 (как и в математике, только вместо запятой в Паскале используется точка). В последней строке мы использовали двойной слэш (две косые черты), после которых идет текст, – так в Паскале пишутся комментарии, и их программа не воспринимает. Всё, что начинается двойным слэшом и до конца строки – это комментарий, который пишется для пояснения к программе и всегда выделяется другим цветом (в PascalABC.Net - это зеленый, в Turbo Pascal не используется такой вид комментария). Существует и другой тип комментария – это {текст, заключенный в фигурные скобки, так же, как и здесь, тоже выделяющийся зеленым цветом} . Этот вид комментария может действовать несколько строк подряд – от начала скобки и до её закрытия, и всё, что находится в середине такой конструкции, компилятор не воспринимает как код и просто пропускает.

В действительности формат записи const немножко сложнее. По правилам мы должны были записать:

1 2 3 4 const N: type integer;

Описание:

")" onmouseout="toolTip()">integer
= 12 ; //число N – целого типа S: type integer;

Описание:
Представляет 32-битовое целое число со знаком.

Диапазон значений: -2 147 483 648 .. 2 147 483 647 ")" onmouseout="toolTip()">integer
= 5 ; //число S – целого типа pi : type real;

Описание:
Представляет число двойной точности с плавающей запятой.

Размер: 8 байт
Количество значащих цифр: 15 - 16
Диапазон значений: -1.8∙10 308 .. 1.8∙10 308
")" onmouseout="toolTip()">real
= 3.14 ; //число «пи» - вещественного

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

✎ 5) var – происходит от англ. «variable» («переменная», или «изменчивый»), что в Паскале означает величину, которая в процессе программы может изменять свое значение. Записывается так:


Как видно из записи, знака «=» здесь нет – пересчитываются переменные одного типа (через запятую) и после двоеточия указывается только тип. Переменные N, m (целые) и Q, r, t (вещественные) в программе могут изменять значения в пределах integer и real соответственно. Ещё одно замечание: описание переменных всегда стоит после описания констант (постоянных) – сначала идет конструкция const , а потом var .

✎ 6) begin – в переводе с английского означает «начинать» и Паскале означает начало основной программы, в которой записываются команды (операторы). После слова begin точка с запятой не ставится.

✎ 7) end – по-англ. «конец», и в языке Pascal означает то же (конец программы). После последнего слова end всегда стоит точка. Мы выделили слово «последнего», поскольку использование конструкции begin – end возможно ещё в одном случае: это так называемые операторные скобки, которые применяются для объединения нескольких операций под одним оператором. Но об этом потом. Таким образом, основная программа будет выглядеть так:

1 2 3 4 5 6 begin < оператор 1 > ; < оператор 2 > ; . . . . . . . < оператор N > ; end .

Здесь операторы в теле программы – это разные команды компилятору.

✎ 8) write – по-английски означает «писать». Этот оператор выводит на экран текст, помещенный в него, поэтому так и называется – оператор вывода. Текст, помещенный в него, выделяется синим и записывается так:

Write("этот текст выведен на экране" );

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

этот текст выведен на экране

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

Write(, S);

В результате получим на экране результат:

Величина площади равна: S = 50

А при необходимости вывести единицы измерения, надо после S снова вставить текст в кавычках:

Write("Величина площади равна: S = " , S, " кв.м" );

После выполнения последнего оператора вывода получим вывод на экран:

Величина площади равна: S = 50 кв.м

✎ 9) writeln – то же, что и write, но после выполнения курсор будет переведен на следующую строку.

✎ 10) read – в переводе с английского означает «читать», поэтому read называется оператором считывания, или ввода данных. Записывается как read(N), что означает необходимость ввода величины N, где N – любое число, или текст, или другой тип переменной. Например, если надо ввести возраст человека, которому 32 года, мы можем записать так:


В первой строчке этого кода программа выводит вопрос «Каков Ваш возраст? » и переводит курсор в следующую строку (окончание ln); во второй строке мы выводим « Year = » (в начале пробел); далее мы видим оператор readln(Year) означающий необходимость введения возраста Year (число 32); наконец, выводим сообщения «Мой возраст », «32 » и « года. » поочередно. Необходимо внимательно следить за пробелами. В результате выполнения данного кода мы получим сообщение:

Каков Ваш возраст?
Year = 32
Мой возраст 32 года

✎ 11) readln – то же, что и read, только с переводом на новую строку. Действительно, в приведенном выше примере после введения числа Year мы только в следующей строке пишем: «Мой возраст 32 года ».

Это пока что все. На следующей странице мы напишем первую программу, и в программировании на Паскале это будут наши

Что еще почитать