Файлы DLL

Паскаль abc обучение с нуля. Язык Pascal (Паскаль)

Паскаль abc обучение с нуля. Язык Pascal (Паскаль)

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

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

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

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

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

Программирование в системе 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.

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

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

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

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

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

О языке Pascal

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

Практическое значение имеет среда разработки Lazarus, в которой используется диалект Object Pascal. В ней можно создавать объектно-ориентированные программы с графическим интерфейсом пользователя.

О сайте

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

Также предусмотрен вариант сортировки задач по уровням сложности.

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).

Часть I.

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

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

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

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

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

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

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

program echo(input ,output );

описания;

var n: integer;

оператор;

write("число?");

оператор;

оператор

Turbo Pascal-Delphi

program имя;

program echo;

uses crt;

описания;

var n: integer;

оператор;

clrscr; read(n);

оператор;

оператор

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

Описатель типа (имя)

Значение типа (пример)

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

Строковый

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

Интервальный

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

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

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

Пройдя все уроки вы получите примеры решения задач, представление о написании программ в целом, а также изучите язык программирования Turbo 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) ;



Copyright © 2024. Портал о компьютерной технике