Программирование на паскале с нуля. Элементарные конструкции языка


На просторах всемирной сети Интернет можно найти массу программ на языке "Паскаль", но намного сложнее разобраться, по какому принципу они работают и как устроены. Давайте же изучим основы программирования вместе!

Алгоритмический язык: базовые понятия

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

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

Элементарные конструкции - это минимальные единицы, которые имеют собственный смысл.

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

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

Язык "Паскаль"

Существует большое количество "Паскаль" (для начинающих есть отдельные пособия) является одним из них. Его алфавит состоит из цифр, букв и специальных символов. Вот их перечень:

  • 26 латинских прописных и ;
  • знак подчеркивания;
  • десять цифр;
  • ограничители;
  • знаки операций;
  • спецификаторы;
  • зарезервированные системой (служебные) слова.

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

Элементарные конструкции языка

"Паскаль" для начинающих включает в себя строки, числа и имена.

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

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

Имя - это последовательность, которая начинается с буквы и может содержать в своем составе цифры. Идентификаторами принято называть метки, типы, константы, функции, процедуры, переменные, объекты и даже модули. Формируя идентификаторы можно использовать символ подчеркивания. Имя может иметь массу символов, но компилятор будет считывать лишь первые 63 знака. "Паскаль", описание которого может показаться таким сложным, не так уж страшен, поэтому не спешите пугаться и закрывать страницу браузера!

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

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

Синтаксис алгоритмического языка

Каждая строка должна заканчиваться точкой с запятой в программе, написанной на рассматриваемом нами языке ("Паскаль"). Информатика учит этому школьников и студентов, а вы сможете осознать эти правила сами!

Точка с запятой (;) - это условный сигнал, который говорит об окончании текущей строки и необходимости перейти на новую. Но исключением могут быть служебные команды: const, var, begin и другие.

Оператор end закрывает программу, поэтому после него обязательно ставится точка. Иногда код может содержать несколько вложений, тогда начало и конец блока будут разделяться точкой с запятой.

Для присвоения переменной определенного значения перед знаком равно необходимо поставить двоеточие. К примеру, вы ходите задать n=13, а в коде это будет выглядеть как n:=13.

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

Классические операторы языка "Паскаль"

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

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

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

Оператор присваивания

Данное выражение имеет вид двоеточия и знака "равно". Оно используется для присвоения определенной переменной конкретного значения. Важно помнить, что тип выражения и переменной должны совпадать в том случае, если они не относятся к целому и действительному типу соответственно. Лишь в такой ситуации произойдет прямое преобразование.

Составные операторы

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

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

Условный оператор языка программирования

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

Структурно выглядит следующим образом:

IF <условие> THEN <оператор1> ELSE <оператор2>.

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

Структура программного кода

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

В заголовке, как правило, содержится имя кода. К примеру, Program MyFirst.

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

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

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

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

В разделе описания используемых переменных следует указать все типы, которые будут задействованы: "var c,a,r: integer; k,l, m: char; h1,h2: boolean;".

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

Текст кода должен заканчиваться точкой.

Примеры программ

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

Давайте сделаем так, чтобы приложение вывело на экран фразу «It is my first program!»

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

Begin
Writeln (It is my first program!");
End.

Вот так все просто!

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

Надеемся, были для вас полезными.

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

Pascal – один из самых известных языков программирования. Создан в 1968 – 1969 годах швейцарским ученым Никлаусом Виртом, был назван в честь французского математика и физика Блеза Паскаля, и используется для обучения программированию по сей день.

1. Подготовка к работе

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

А что же собственно, такое, этот «компилятор» ? Это специальная программа, которая считывает код программы, а затем переводит его на язык машинных кодов. То есть, по сути, все языки программирования – это способ “общения” с компьютером, а компилятор помогает перевести нашу “речь” на понятную ему.

Для Pascal существует немало компиляторов, самые известные из них: Pascal ABC, Free Pascal, Pascal ABC.NET, Turbo Pascal. Все эти программы по-своему хороши, но лично для меня (автора), очень удобен Pascal ABC (или Pascal ABC.NET), поскольку он имеет весьма удобный интерфейс, подробную справку, и даже специально подготовленный для новичков сборник задач.

2. Начало работы

Что ж, перед нами открыто окно компилятора. Чистый, белый (или синий?) лист. Здесь и будут появляться на свет наши первые программы. Перед началом работы следует запомнить, что язык Pascal – это совокупность трёх составляющих: алфавита, синтаксиса (правил написания объектов языка) и семантики (правил использования этих объектов).
Алфавит Pascal состоит из:
  1. Прописных и строчных букв латиницы: A...Z, a…z;
  2. Цифр: 0...9;
  3. Специальных символов: + - * / = < >.,:; ‘ # () { } и их комбинаций: «>=» «
Задача же синтаксиса и семантики состоит в том чтобы, правильно написать раздел программы и правильно составить ее структуру, в противном же случае наша программа будет работать неправильно (или же не работать вовсе!).
Вам наверное уже не терпится приступить к самой интересной части, так что сейчас мы с вами попробуем написать ваши первые программы.

Структура программы выглядит так:

Program «имя программы»; - заголовок программы;
(Примечание: в конце строки ставится точка с запятой, не во всех, но в большинстве)
Uses (название библиотеки); здесь подключаются библиотеки, которые дают дополнительные возможности при создании программ;
Label (имя метки); здесь, если необходимо, прописываются метки, позволяющие переходить в разные места программы (о них позже);
Const тут указываем переменные с постоянной величиной, например, p=3.14;
Var тут через запятую перечисляем все переменные, а затем, указываем тип данных (Пример: Var: K, L, M: integer; N, O: real; (если несколько типов));
Begin (здесь без точки с запятой)
Дальше следует основной блок программы;
end. – конец программы (обязательно после “end” точка, если только это конец программы, а не операторные скобки).

3. Создание первых программ

Теперь вы знакомы с основной структурой программы. Следует заметить, что из вышеперечисленных разделов обязательными есть только «Var», «Begin» и «end», остальные же могут применяться, если это требуется в ходе выполнения поставленной задачи.

Откройте окно вашого компилятора, и введите следующие строки:

Program Programma1;
begin
end.

Нажмите кнопку «Выполнить»(«Run»). Ничего не происходит? Так и есть, ведь наша программа «пустая», мы не указали что она должна делать, потому ничего и не произошло. Обычно принцип работы программы написанной на языке Pascal состоит из трёх этапов: ввод данных – обработка данных – вывод даннных. Теперь познакомимся с оператором “write”. Он служит для как раз для вывода данных без перехода на новую строку. Попробуем его применить, тем самым сделав нашу программу чуть сложнее и интереснее:

Program Programma1;
begin
write(" Pascal ");
end.

Собственно, так он и применяется. Между апострофами мы можем ввести любой текст, на любой раскладке, и после выполнения программы он появится в окне вывода (или в командной строке, смотря какой у вас компилятор). В данном случае, должно появиться слово «Pascal».

3.1. Операторы write, writeln, read, readln
Теперь поговорим о вводе данных. Мы уже познакомились с оператором write, но существуют также и другие. Writeln, к примеру, используется для вывода данных с переходом на новую строку. Зачем? Ну, например чтобы дать какой-нибудь переменной значение:

Program Programma1;
var A:integer;
begin
writeln("A= "); read(A); {ввести значение и «прикрепить» его к переменной A}
write(A); {Вывести значение переменной A}
end.

Как вы видите, я вкратце описал каждое действие в фигурных скобках. Это называется комментарий. В дальнейшем я также буду использовать их для объяснений.
В этом примере для присваивания к переменной значения, введенного с клавиатуры используется оператор read. Мы видим, что при выполнении он прочитал строку в переменную А. А другой оператор, readln работает по другому. Используя его, мы можем сразу ввести нужную строку, и она прочитается в переменную:

Program Programma1;
var A:integer;
begin
readln(A);
write("A= ", A); {строка будет выглядеть так: «А= " введенное значение А " „}
end.

Теперь, когда вы немного знаете о вводе данных, поговорим о том, какие могут быть данные, и как их обрабатывать.

3.2. Типы данных в Pascal
Пока вы читали эту статью, вы, наверное, уже пару раз натыкались на непонятное вам integer. Внимательно изучив основную структуру программы, вы наверняка поняли, что это тип данных. Но что это означает? Давайте поближе с этим познакомимся.

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

Целые типы данных (для целых чисел):
- byte
Объем памяти значений этого типа составляет 1 байт. Диапазон значений для данного типа: от 0 до 255.
- word
Значения этого типа занимают уже 2 байта памяти, а диапазон значений уже побольше: от 0 до 65535.
- integer (уже нам знакомый)
Значения также занимают 2 байта памяти, диапазон такого же размера, но включает уже и отрицательные числа: -32786…32787.
- LongInt
Объем памяти, занимаемый значением типа равняется 4 байтам. Диапазон значений же полностью соответствует названию типа данных: от -2147483648 до 2147483647
- ShortInt
Значение типа потребляет 1 байт памяти, диапазон относительно небольшой: -128…127.

Вещественные типы данных (для чисел с дробной частью):
- Real
Занимаемая значением типа – 6 байт. Число значащих цифр – 11-12. (значащие цифры – это точные цифры, т.е. не округленные). Диапазон значений типа: от 2.9*10-39 до 1.7*1038.
- Double
Размер значения типа – 8 байт. Число значащих цифр – 15-16. Диапазон: 5.0*10324…1.7*10308.
- Extended
Занимает 10 байт. Число значущих цифр – 19-20. Диапазон: 3.4*10-4932…1.1*104932.
Помимо этих, существуют также символьный тип данных (char) и даже логический тип данных (boolean), переменные которого могут принимать значения только true или false.

Итак, мы уже немало узнали о вводе и выводе данных. Теперь же перейдем к самой сложной части – обработке данных.

3.3. Обработка данных. Математические операции. Условия. Логические операции.
Мы уже научились вводить данные в программу, теперь попробуем научиться их обрабатывать. Первое, и самое главное, что нам пригодится в этом деле – оператор присваивания. Выражается он вот так: «:=», и используется для присваивания значения переменной. Примеры: A:=1.5; B:=2+A. Теперь, когда мы знакомы с оператором присваивания, можем рассмотреть математические операции Pascal:
  1. Сложение (+);
  2. Вычитание (-);
  3. Умножение (*);
  4. Деление (/);
  5. Целочисленное деление (div) – возвращает целую часть от деления (Пример: 10 div 3 = 3);
  6. Остаток от деления (mod) – возвращает только остаток от деления (Пример: 5 mod 2 = 1);
Помимо приведенных, существуют еще такие операции и функции для работы с числами:

Abs(x) – возвращает модуль от x;
sin(x) – синус угла x (в радианах);
cos(x) – косинус угла x (в радианах);
int(x) – возвращает целую часть от x;
random(число) – случайное число от 0 до заданного;
sqr(x) – квадрат x;
sqrt(x) – квадратный корень x;
inc(x) – увеличить x на 1;
dec(x) – уменьшить x на 1.

Условия
Условия в Pascal играют очень большую роль, особенно если алгоритм выполнения программы разветвленный. Формулируется условие следующим образом:

If (условие 1) then (действие 1 - основное) else (действие 2 - альтернативное)
(if – если, then – то, else – иначе)

При построении условия пользуются логическими операциями and, not, or, xor:

And – операнд, объединяющий несколько условий в одно. Действие будет выполняться, только если все перечисленные условия будут верны.
program Usloviya;
var a:integer;
begin
readln(a);
if (2*2=4) and (3+2=5) then a:=a+1 else a:=a-1;
write(a);
end.

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

Not – логическое действие с условием из одной части. Если условие неверно, то будет выполняться основное действие (первое), если верно – то альтернативное (второе).

Program Usloviya;
var b:integer;
begin
readln (b);
if not 5=4 then b:=b+1 else b:=b-1;
write (b);
end.

Условие 5=4 неверно, следовательно, будет выполняться первое действие.

Or (или) – логический оператор для условия из нескольких частей. Основное действие будет выполняться, если верно хотя бы одно условие.
program Usloviya;
var d:integer;
begin
readln (d);
if (5=4+1) or (5=4) then d:=d+1 else d:=d-1;
write(d);
end.

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

Xor – с этим оператором основное действие выполняется, если верно только одно условие. Если верны несколько условий, или же ни одного, то выполнится альтернативное действие.

Program Usloviya;
var n:integer;
begin
readln(n);
if (6=4) xor (3=5-2) then n:=n+1 else n:=n-1;
write (n);
end.

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

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

3.4. Процедуры и функции для управления программой
Поговорим о упомянутой раньше метке. Эта процедура очень легка в использовании и позволяет при надобности перейти в любую часть программы, «перескочив» одну из следующих частей, или же наоборот, вернуться в предыдущую часть. Прописывается метка очень просто: сперва описываем метку в разделе меток (см. п. 3. Начало работы. Структура программы), а затем указывается место перехода, а нужный оператор помечается меткой.

Program Metka;
label 1,2;
var A, B:integer;
begin
readln (A);
2: if A=5 then goto 1; {2: - действие после перехода на соответствующую метку,}
A:=A+1; {goto - переход на метку}
goto 2;
1: write (A);
end.

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

Delay(время) – остановка программы с задержкой, время в кавычках указывается в миллисекундах.
Readkey – остановка программы до нажатия клавиши, значение функции – код нажатой клавиши.
Exit – досрочное завершение процедуры.
Следует заметить, что для работы delay, readkey, и exit необходимо подключить модуль crt (uses crt).

Также посмотрите видео: Паскаль с нуля - первая программа.

4. Заключение

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

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

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

Построить модель равноускоренного движения тела (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) ;

Паскаль для начинающих

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

Pascal (Паскаль) - язык программирования общего назначения. Создан в 1970 году специалистами Технического Университета в Цюрихе (ETH, Zurich) под руководством профессора Никлауса Вирта (Niklaus Wirth). После появления языка Pascal были созданы новые промышленные версии языка, а также языки-потомки, которые сохраняют основные синтаксические и семантические свойства языка Вирта: Modula, Turbo Pascal, Object Pascal (Delphi), Component Pascal (Oberon-2), TMT Pascal, Free Pascal, Zonnon, Ada. Идеи языка Pascal оказали большое влияние на современные языки программирования, которые активно используются в современной промышленности: Java, Javascript, C#. При этом Pascal значительно проще и хорошо приспособлен для начального изучения программирования. Описание языка дано в соответствии с диалектом языка фирмы Borland Software (США): Turbo Pascal 7.1. (1992).

1. Основные правила грамматики

1. Текст программы состоит из трех составных частей. Это заголовок, описания, операторы. Заголовок программы содержит имя программы. Для версии ETH необходимо дополнительно указать источник и приемник данных для работы программы - файлы для ввода и вывода информации. По умолчанию файл input связан с клавиатурой компьютера, а файл output - с экраном монитора. В Turbo Pascal заголовок имеет декоративное значение и использовать его не обязательно.

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

3. В одной строке текста можно размещать несколько операторов или описаний. Поэтому между операторами надо обязательно ставить символ-разделитель. Для разделения операторов используется символ точка с запятой (;). После последнего оператора разделитель ставить не обязательно.

4. Малые и большие буквы считаются эквивалентными (равнозначными). Имя любого объекта в записи программы может содержать только буквы латинского алфавита, цифры и символ подчеркивания (_). Имя не может начинаться с цифры. Никакие другие типы символов в записи имен не разрешаются.

2. Общее строение программыETH Pascal Пример

program имя(ввод,вывод); program echo(input,output);

описания; var n: integer;

оператор; write("число?");

оператор; read(n);

оператор write(n)

Turbo Pascal-Delphi Пример

program имя; program echo;

модули; uses crt;

описания; var n: integer;

оператор; clrscr; read(n);

оператор; write(n);

оператор readkey

3. Основные типы переменных

Действительный real 16.32

1.6320000000E+01

Тип Описатель типа (имя) Значение типа (пример)

Целый integer 30000

Длинный целый longint 2000000000

Тип Описатель типа (имя) Значение типа (пример)

Строковый string "задача"

Логический (булевский) boolean false

Интервальный M1..M2 100

4. Конструкции для описания величинОписание переменных величин Пример

имя-переменной: имя-типа; a: real;

имя1, имя2, имя3: имя-типа; x, y, z: integer;

p, q, r: 0..100;

s, t, u: "a".."z";

Описание постоянных величин Пример

имя1 = значение1; X = 40000;

имя2 = значение2; Y = 16.32;

имя3 = значение3; Z = -1.632E+10;

имяN = значениеN; A = "a";

T = "тема"#13#10"урока:";

5. Оператор присваиванияФорма оператора Пример

имя:= выражение a:= 0;

6. Ввод и выводПроцедура Пример 1 Пример 2

read(список ввода) program echo1(input,output); program echo2(input,output);

readln(список ввода) var m, n: integer; var m, n: integer;

write(список вывода) BEGIN BEGIN

writeln(список вывода) read(m,n); readln(m,n);

write("m=",m); writeln("m=",m);

write("n=",n) writeln("n=",n)

Число (n) Тип Формат вывода Результат вывода

16 integer write(n) 16

16 integer write(n:2) 16

16 integer write(n:5) 16

16.32 real write(n); 1.6320000000E+01

16.32 real write(n:12) 1.63200E+01

16.32 real write(n:5:2) 16.32

16.32 real write(n:10:4) 16.3200

7. Модуль crt (cathode ray tube)Процедуры и функции Операция Пример

clrscr Очистить экран clrscr

textcolor(цвет) Установить цвет текста textcolor(1)

textbackground(цвет) Установить цвет фона textbackground(1)

textbackground(blue)

delay(время в миллисекундах) Остановить выполнение на заданное время delay(1000)

gotoxy(колонка,строка) Установить курсор на заданную позицию gotoxy(40,20)

keypressed Если была нажата клавиша, то true (функция) repeat write("o") until keypressed

readkey Остановить выполнение до нажатия клавиши, прочитать код нажатой клавиши (функция) readkey

Номер и имя цвета Номер и имя цвета

0 black 8 darkgray

1 blue 9 lightblue

2 green 10 lightgreen

3 cyan 11 lightcyan

4 red 12 lightred

5 magenta 13 lightmagenta

6 brown 14 yellow

7 lightgray 15 white

8. Арифметические средства языкаАрифметическая операция Описание операции Пример

Сложение

Вычитание

* Умножение

/ Деление 5.0/2.0 = 2.5

div Целочисленное деление (деление без остатка) 5 div 2 = 2

mod Остаток от деления 5 mod 2 = 1

shl Двоичный сдвиг влево 5 shl 1 = 10

shr Двоичный сдвиг вправо 5 shr 1 = 2

abs(x) Модуль числа (абсолютное значение) abs(-2) = 2

sqr(x) Квадрат числа sqr(2) = 4

sqrt(x) Квадратный корень числа sqrt(4) = 2.0

pi Число пи ~ 3.14...

Функция Результат функции Пример

sin(x) Синус числа sin(pi) = 0

cos(x) Косинус числа cos(0) ~ 1.0

ln(x) Логарифм натуральный ln(1) = 0

exp(x) Экспонента (число e в степени x) exp(1) ~ 2.72

Функция Результат функции Пример

int(x) Целая часть числа int(3.6) = 3.0

trunc(x) Целое число без округления trunc(3.6) = 3

round(x) Целое число с округлением round(3.6) = 4

9. Логические средства языкаОператор условия - полная форма Пример

if условие then if (x>0) and (y>0) then

оператор 1 begin x:=x+y; y:=0 end

оператор 2 begin x:=x-y; y:=-y end

Оператор условия - неполная форма Пример

if условие then if x>y then

оператор x:=x mod y

Логическая операция Описание операции Приоритет (порядок выполнения операции)

not Отрицание (НЕ) 1

and Конъюнкция (И) 2

or Дизъюнкция (ИЛИ) 3

xor Сильная дизъюнкция (ИЛИ-ИЛИ) 3

Логическое отношение (предикат) Описание отношения Приоритет (порядок выполнения операции)

> Больше 4

< Меньше 4

<> Не равно 4

<= Не больше (меньше или равно) 4

>= Не меньше (больше или равно) 4

Оператор варианта Пример

case выражение of case c of

вариант-1: оператор; 0: x:=x+1;

вариант-2: оператор; 1,2: x:=x-1;

вариант-N: оператор 3..100: x:=-x

оператор x:=0

10. Операторы циклаОператор цикла с управляющей переменной - форма "to" Пример

for имя:=значение1 to значение2 do for i:=1 to n do

оператор begin read(a); s:=s+a end

Оператор цикла с управляющей переменной - форма "downto" Пример

for имя:=значение1 downto значение2 do for i:=n downto 0 do

оператор write(i)

Оператор цикла с логическим пред-условием Пример

while условие-повторения do while i<=n do

оператор begin read(a); s:=s+a; i:=i+1 end

Оператор цикла с логическим пост-условием Пример

операторы write(i); i:=i-1

until условие-выхода until i=0

11. МассивыТип массива Описание массива Пример

Одномерный массив (вектор) array [ тип-индекса ] of тип-элемента var a: array [ 1..100 ] of integer;

Тип массива Описание массива Пример

2-мерный массив (матрица) array [ тип-индекса-1, тип-индекса-2 ] of тип-элемента; var a: array [ 1..M, 1..M ] of real;

3-мерный массив array [ тип-индекса-1, тип-индекса-2, тип-индекса-3 ] of тип-элемента; var a: array [ 0..1, 0..M, 0..N ] of char;

4-мерный массив array [ тип-индекса-1, тип-индекса-2, тип-индекса-3, тип-индекса-4 ] of тип-элемента; var a: array [ 0..1, 0..1, 0..1, "a".."z" ] of boolean;

12. Процедуры и функции пользователяПроцедура Пример процедуры для обмена значений между целыми переменными m и n

procedure имя(параметры); procedure swap(var m,n:integer);

описания локальных величин var s: integer;

операторы процедуры s:=m; m:=n; n:=s

операторы программы read(x,y); swap(x,y); writeln(x:10,y:10)

Функция Пример функции для вычисления натуральной степени (n) целого числа (m)

program имя-программы; program primer; var x,y: integer;

function имя(параметры): тип-результата; function power(m,n:integer):integer;

описания локальных величин var s,i: integer;

операторы функции s:=1; for i:=1 to n do s:=s*m; power:=s

операторы программы read(x,y); writeln(power(x,y))

13. Символьные типы данныхТип Описатель типа (имя) Значение типа (пример)

Символьный (литерный) char "a"

Строковый string "задача"

"тема"#13#10"урока:"

Функция Результат функции Пример

length(s) Длина строки n:=length(s)

pos(s1,s2) Начало первого вхождения строки s1 внутри строки s2 (номер позиции) n:=pos("+",s)

copy(s,p,n) Часть строки s длиной n, начиная с позиции p c:=copy(s,4,2)

concat(s1,s2,s3,...sn) Соединить строки (функция конкатенации) c:=concat(s,";",t,".")

Функция Результат функции Пример

upcase(c) Преобразовать малую букву латинского алфавита в большую (символ верхнего регистра) c:=upcase(c)

chr(n) Символ с номером n c:=chr(n)

ord(c) Номер символа со значением c n:=ord(c)

succ(c) Следующий символ таблицы ASCII c:=succ(c)

pred(c) Предыдущий символ таблицы ASCII c:=pred(c)

Процедура Операция Пример

delete(s,p,n) Удалить часть строки s длиной n, начиная с позиции p delete(s,n,1)

insert(s1,s2,p) Вставить строку s1 в строку s2, начиная с позиции p insert("+",s,1)

val(s,x,r) Преобразовать строку s в число x с признаком результата r val(s,x,nan)

str(x:f,s) Преобразовать число x в строку s с форматом числа f str(x:10,s)

s1 + s2 Соединить строки (операция конкатенации) s:=s+";"+t+"."

14. МножестваТип множества Описание множества Пример

Постоянное множество (константа) [ тип-элемента ] const a = [ 0..100 ];

Переменное множество (переменная) set of [ тип-элемента ] var a: set of [ "0".."9", "+", "-" ];

Пример описания постоянного множества Элементы множества

const A = [ "A".."Z", "a".."z" ]; Буквы латинского алфавита

const B = [ "a".."z" ]; Малые буквы латинского алфавита

const C = [ "А".."Я", "а".."п", "р".."я", "Ё", "ё" ]; Буквы алфавита-кириллицы

const D = [ "А".."Я" ]; Большие буквы алфавита-кириллицы

const M = [ "0".."9" ]; Цифровые символы от 0 до 9

const N = [ 0..100 ]; Целые числа от 0 до 100

«Основы программирования и структура кода» - видео урок, речь в котором пойдет о программировании как о дисциплине и о проблемах, с которыми можно столкнуться пи изучении данной дисциплины. Кроме того, автор урока расскажет о роли кода в написании современного программного обеспечения. Прежде всего, данный урок призван объяснить и дать ответы на вопросы связанный с изучением программирования. Объяснять основы программирования автор урока будет на основе самых популярных и востребованных языков - Пасаль и Си, поскольку эти языки считаются основой любого программного комплекса.

Поэтому если вы готовы, то приступайте к изучению материала и смотрите видео урок «Основы программирования и структура кода» на нашем образовательном портале. Приятного вам просмотра!

Вашему вниманию предлагаем первую часть курса видео уроков по обучению начинающих пользователей языку программирования Паскаль под названием «Программирование на языке Pascal ч.1». Первая часть уроков посвящена знакомству с языком Pascal, со средами программирования этого языка и их отличию друг от друга. Также вам будет предложено написать небольшую программу на этом языке. Автор данного видео начнет свое обучение с самых азов (где можно взять оболочки Pascal) и постепенно на понятном и доступном языке будет уходить в самую глубь этого непростого языка программирования.

С видео уроками «Программирование на языке Pascal ч.1» могут ознакомиться все желающие на нашем портале. Успехов!

Продолжая обучение программированию на языке Паскаль, предлагаем вашему вниманию следующий блок видео уроков «Программирование на языке Pascal ч.2». Благодаря первой части обучения вы уже успели познакомиться с этим интересным языком, освоили его азы и даже научились распознавать некоторые составляющие. Но нужно двигаться дальше. Поэтому предлагаем вашему вниманию вторую часть бесплатного видео обучения программирования на языке Pascal. Данный блок научит вас нескольким командам. Но главная тема второго блока — изучение циклов. Только поняв основные составляющие и отличия циклов с параметрами, с предварительными и последующими условиями, можно двигаться дальше.

Смотрите онлайн видео урок «Программирование на языке Pascal ч.2» на нашем портале. Успехов!

Перед вами третья часть обучающих видео уроков «Программирование на языке ч.3». В данном блоке будет рассказано о строковом типе данных string, а именно о его особенностях и преимуществах. Далее вы перейдете к изучению довольно-таки сложной темы - массивам и их разновидности. Вы научитесь создавать двумерные массивы, узнаете, что такое сортировка «пузырьком». В заключение этого блока вам предстоит изучить такую интересную тему как типы данных и их различия. Автор видео урока рекомендует отнестись к этой теме особенно серьезно, поскольку она является базовой при изучении языка программирования Паскаль.

Смотрите онлайн видео урок «Программирование на языке Pascal ч.3» на нашем портале. Успехов!

В заключительной части видео уроков «Программирование на языке Pascal ч.4» вам будет предложено изучить процедуры и функции, а также рассмотреть их отличия. Вы научитесь объявлять процедуры и функции с параметром и без параметра. Данная часть обучения расскажет вам подробно о работе файлах. Вы разберете, какими они бывают, а также научитесь самостоятельно писать небольшие программы. Вы освоите работу с локальными и глобальными переменными, узнаете, как можно динамически создавать переменные, а также сможете создавать собственный модуль (unit) и изучите его структуру.

Приглашаем вас посетить наш виртуальный образовательный канал и посмотреть видео уроки «Программирование на языке Pascal ч.4». Желаем приятного обучения!

Просмотрев онлайн вторую часть видео «Уроки Object Pascal для начинающих ч.2», вы научитесь создавать и вызывать процедуры и функции, узнаете, как работать с графикой в паскале, освоите процедуру sound, ознакомитесь с его параметрами, а также изучите строковые типы данных и процедуры работы с ними.

Заходите на наш уникальный образовательный портал и смотрите онлайн видео «Уроки Object Pascal для начинающих ч.2» совершенно бесплатно, когда пожелаете узнать что-нибудь новенькое. Желаем вам продуктивных занятий и быстрых результатов!

Предлагаем вам посмотреть онлайн видео «Уроки Object Pascal для начинающих ч.1», с помощью которых вы ознакомитесь с основами, функциями и возможностями данного языка программирования. В первой части вы ознакомитесь со структурой проекта и модуля, с элементами программы, с операторами и процедурами ввода-вывода данных, изучите условные операторы, научитесь писать программы с разветвленной структурой, освоите безусловный переход GoTo, а также ознакомитесь с циклами и массивами.

Узнавайте больше информации из онлайн видео «Уроки Object Pascal для начинающих ч.1», размещенных на нашем портале. Успехов в учебе!







2024 © gtavrl.ru.