На просторах всемирной сети Интернет можно найти массу программ на языке "Паскаль", но намного сложнее разобраться, по какому принципу они работают и как устроены. Давайте же изучим основы программирования вместе!
Алгоритмический язык: базовые понятия
В разговорной речи мы используем основные единицы: символы, и целые предложение. Алгоритмический язык также имеет подобную структуру, только его составляющие называются по-другому. Речь идет об элементарных конструкциях, выражениях и операторах. Все эти единицы формируют иерархическую структуру, поскольку каждый последующий элемент образовывается из предыдущего.
Символы алгоритмического языка - это неделимые атомы, используемые для написания кода.
Элементарные конструкции - это минимальные единицы, которые имеют собственный смысл.
Классические выражения языка формируются из двух вышеназванных единиц и задают правила нахождения необходимого значения.
Оператор отвечает за описание определенного преобразования, которое является обязательным для корректного выполнения программы. Их может быть несколько, если нужно - программа должна выполнить сложную операцию. В таких ситуациях их объединяют в блок либо же составной оператор.
Язык "Паскаль"
Существует большое количество "Паскаль" (для начинающих есть отдельные пособия) является одним из них. Его алфавит состоит из цифр, букв и специальных символов. Вот их перечень:
- 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 (Паскаль) почти не имеет практического значения, но часто используется для обучения программированию (для этого он и был разработан). В настоящее время существует ряд его диалектов и сред разработки, имеющих незначительные различия между собой.
Практическое значение имеет среда разработки Lazarus, в которой используется диалект Object Pascal. В ней можно создавать объектно-ориентированные программы с графическим интерфейсом пользователя.
О сайте
Это сайт для начинающих изучать программирование. В качестве языка используется Pascal (Паскаль). Нами используется FreePascal, однако, поскольку синтаксис 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
|
Если условие A>B верно, то выполняется группа операторов ОП.1 , в противном случае – группа операторов ОП.2 (условный оператор) | |
WHILE I<=N DO
|
Пока будет выполнено
I? N
, выполняется
группа операторов
ОП.1 (оператор цикла с предусловием, ОП.1 – тело цикла) |
|
REPEAT ОП.1 UNTIL I>N |
Выполняется группа опера-торов
ОП.1
до тех пор, пока не будет выполнено
условие
I>N. (оператор цикла с постусловием, ОП.1 – тело цикла) |
|
FOR
I:=1 TO
N DO
|
Для каждого
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. Тела двигаются в противоположных направлениях.
|
|||
Введите скорость 1
тела 10 Введите скорость 2 тела 5 Введите направление 1 тела L Введите направление 2 тела R Скорость равна 15 |
|||
II.
Добавить ввод начальных
координат тел и определить сближаются или
отдаляются тела. III. Определить расстояние между телами через время t (ввести с клавиатуры). 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, с ). Расчетные данные (выводятся на экран):
Примерный вид экрана при работе |
|||||||
Введите
скорость тела 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. В большинстве языков программирования принято объявлять участвующие в программе переменные. Это нужно для того, что бы зарезервировать фрагмент оперативной памяти компьютера для хранения объявленных данных. На рисунке показана программа калькулятора:Рассмотрим построчно, что означают введённые в редакторе команды: При программировании используются различные типы данных. Ниже представлены числовые типы данных: Следующие две строки в точности повторяют две предыдущие, только выводится сообщение для ввода переменной Y и чтение этой переменной с клавиатуры.     Что бы убедиться в правильности написания программы следует нажать клавишу F9. Произойдёт компиляция программы и проверка синтаксиса. Если код написан верно, то увидим следующее сообщение:
Логические операторы. Символьные переменные.При выполнении написанной программы могут возникнуть непредвиденные обстоятельства, а именно, если пользователь программы вторым числом введёт значение 0 (нуль). Как известно, деление на 0 запрещено и при выполнении программы компьютер выдаст такое сообщение:
Разрабатывая нашу программу, мы нарушили один из основных принципов структурного программирования - в программе не должно быть переходов из одной части программы в другую. Поэтому при структурном программировании нужно стараться не использовать оператор перехода goto. |