Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Основы программирования на языке Pascal(История развития языка Pascal)

СОДЕРЖАНИЕ

ВВЕДЕНИЕ 3

1.1. История развития языка Pascal 4

1.2. Основные символы и структура построения программы 4

1.3. Этапы разработки программы 6

1.4. Алгоритмы и алгоритмизация 8

1.5. Структура программ на Pascal 9

2. ПРОГРАММИРОВАНИЕ ОСНОВНЫХ КОНСТРУКЦИЙ ЯЗЫКА 11

2.1. Основы Pascal 11

2.2. Линейная структура 12

2.3. Циклы 13

2.4. Символы и строки 15

2.5. Массивы 15

2.6. Процедуры и функции 15

2.7. Графика 17

2.8. Файлы 17

2.9. Рекурсия 18

3. ОТЛАДКА ПРОГРАММ 20

ЗАКЛЮЧЕНИЕ 27

БИБЛИОГРАФИЯ 28

ПРИЛОЖЕНИЕ 29

ВВЕДЕНИЕ

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

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

Цель исследования: изучить основы языка программирования.

Задачи исследования:

- изучить структуру программы;

- основы языка программирования;

- решение задач на языке Pascal.

Объект исследования: программа PascalABC.

Предмет исследования: графика в PascalABC.

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

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

1. ОЗНАКОМЛЕНИЕ С ЯЗЫКОМ PASCAL

1.1. История развития языка Pascal

Язык Паскаль, названный в честь французского математика и философа Блеза Паскаля (1623-1662), был создан как учебный язык программирования в 1968-71 годах швейцарским ученым Никлаусом Виртом на кафедре информатики Стэнфордского университета (Цюрих). В настоящее время это язык имеет более широкую сферу применения, чем предусматривалось при его создании. Свое признание Паскаль получил с появлением пакета Турбо Паскаль (Turbo Pascal). Этот язык отличается простотой понимания, стройностью и структурностью алгоритмов, быстротой компилятора и удобными средствами создания и отладки программ [4].

Достоинствами языка Паскаль являются:

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

- Достаточно низкие аппаратные и системные требования как самого компилятора, так и программ, написанных на Паскале.

- Универсальность языка. Язык Паскаль применим для решения практически всех задач программирования.

- Поддержка структурного программирования, программирования "сверху-вниз", а также объектно-ориентированного программирования.

В настоящем пособии рассматривается Turbo Pascal v7.0. Данная версия разработана фирмой Borland и является последней в линейке компиляторов Pascal для DOS. Дальнейшее развитие Паскаль получил в Delphi - системе разработки программ для Windows [4].

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

Основные символы языка - буквы, цифры и специальные символы - составляют его алфавит [6].

Pascal включает следующий набор основных символов:

  • 26 латинских строчных и 26 латинских прописных букв;
  • знак подчеркивания (_);
  • 10 цифр (от 0 до 9);
  • знаки операций (+ - * / = <> <> <=> =: = @);
  • ограничители (., ' () [] (.) {} (* *).: ;);
  • спецификаторы (^ # $);
  • служебные (зарезервированные слова) – cм. табл.1.2.1.

Кроме перечисленных, в набор основных символов входит пробел. Пробелы нельзя использовать внутри сдвоенных символов и зарезервированных слов [6].

Таблица 1.2.1.

Зарезервированные слова языка Pascal

absolute

Абсолютный

label

метка

and

Логическое И

library

библиотека

array

Массив

mod

Остаток от деления

asm

Ассемблер

nil

Отсутствие

begin

Начало блока

not

Логическое НЕ

case

Вариант

or

Логическое ИЛИ

const

Константа

of

Из

constructor

Конструктор

object

Объект

div

Деление нацело

packed

Упакованный

goto

Переход на

procedure

Процедура

do

Выполнять

program

Программа

downto

Уменьшить до

record

Запись

destructor

Деструктор

repeat

Повторять

else

Иначе

set

Множество

end

Конец блока

shl

Сдвиг разрядов влево

exports

Экспорт

shr

Сдвиг разрядов вправо

external

Внешний

string

Строка

file

Файл

then

То

for

Для

to

Увеличивая

Окончание таблицы 1.2.1

forward

Опережающий

type

Тип

function

Функция

unit

Модуль

if

Если

until

До

implementation

Реализация

uses

Использовать

in

В (входит в ...)

var

Переменная

inline

Основной

while

Пока

interrupt

Прерывание

with

С

interface

Интерфейс

xor

Исключающее ИЛИ

inherited

Наследование

Источник: Зубок Д.А., Маятин А.В., Краснов С.В. Основы программирования в среде Turbo Pascal. Учебное пособие. Санкт-Петербург, 2009.

1.3. Этапы разработки программы

В процессе создания любой программы можно выделить несколько этапов:

- постановка задачи;

- анализ, формальное описание задачи, выбор модели;

- выбор и разработка алгоритма решения задачи;

- проектирование общей структуры программы;

- кодирование;

- отладка и верификация программы;

- получение результата;

- публикация или передача заказчику результата работы;

- сопровождение программы.

Описание каждого из перечисленных этапов:

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

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

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

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

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

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

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

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

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

1.4. Алгоритмы и алгоритмизация

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

Алгоритмизация – процесс разработки и описания алгоритма решения какой-либо задачи.

Алгоритм должен удовлетворять определенным требованиям:

- наличие ввода исходных данных;

- наличие вывода исходных данных.

- однозначность;

- общность - алгоритм предназначен для решения некоторого класса задач;

- корректность - алгоритм должен давать правильное решение задачи;

- конечность - решение задачи должно быть получено за конечное число шагов;

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

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

Таблица 1.4.1.

Графические символы блок-схемы

Данные

Продолжение теблицы 1.4.1

Ручной ввод

Дисплей

Процесс

Решение

Соединитель

Терминатор

Комментарий

Источник: ГОСТ 19.701 – 90. ЕСПД. Схемы алгоритмов, программ данных и систем. Обозначения условные и правила выполнения. Москва, 2010.

1.5. Структура программ на Pascal

Программа на языке Паскаль состоит из заголовка, разделов описаний и раздела операторов [7].

Program имя программы;

Uses подключаемые модули;

Блок описания:

Меток

Констант

Типов

Переменных

Процедур

Функций

Begin

Тело программы.

Исполняемая часть.

End.

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

Комментарии заключаются в фигурные скобки {……}.

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

2. ПРОГРАММИРОВАНИЕ ОСНОВНЫХ КОНСТРУКЦИЙ ЯЗЫКА

2.1. Основы Pascal

Приступая к решению задач следует помнить, что

- каждая переменна программы должна быть объявлена;

- объявление переменных перемещают в раздел, который начинается словом var;

-основными числовыми типами являются integer(целый) и real(дробный);

- инструкции write и writeln предназначены для вывода на экран монитора сообщений и значений переменных;

- для ввода с клавиатуры во время работы программы исходных данных (значений переменных) предназначена инструкция readln [1].

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

Таблица 2.1.1.

Типы данных

Иденти-фикатор

Длина (байт)

Диапазон значений

Операции

Целые типы

integer

2

-32768..32767

+,-,/,*,Div,Mod,>=, <=, =, <>, <, >

byte

1

0..255

+,-,/,*,Div,Mod,>=, <=, =, <>, <, >

word

2

0..65535

+,-,/,*,Div,Mod,>=, <=, =, <>, <, >

shortint

1

-128..127

+,-,/,*,Div,Mod,>=, <=, =, <>, <, >

longint

4

-2147483648.2147483647

+, -, /, *, Div, Mod, >=, <=, =, <>, <, >

Вещественные типы

real

6

2,9x10-39 - 1,7x1038

+, -, /, *, >=, <=, =, <>, <, >

Окончание таблицы 2.1.1.

Иденти-фикатор

Длина

(байт)

Диапазон значений

Операции

single

4

1,5x10-45 - 3,4x1038

+,-,/,*, >=, <=, =, <>, <, >

double

8

5x10-324 - 1,7x10308

+,-,/,*,>=, <=, =, <>, <, >

extended

10

3,4x10-4932 - 1,1x104932

+,-,/,*,>=, <=, =, <>, <, >

Логический тип

boolean

1

true, false

Not,And,Or,Xor,>=, <=, =, <>, <, >

Символьный тип

char

1

Все символы кода ASCII

+, >=, <=, =, <>, <, >

Источник: Учебное пособие. Изучаем Паскаль. Л. Усольцева, Б. П. Зотьева, И. С. Сергеевой, В. Л. Лецко. Волгоградский государственный педагогический университет. Кафедра алгебры, геометрии и информатики.

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

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

2.2. Линейная структура

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

В Паскале имеются две реализации одной из основных алгоритмических структур - ветвления. Операторы ветвления позволят на основе анализа некоторого условия выбрать нужный вариант продолжения вычислительного процесса. К операторам ветвления относится условный оператор и оператор выбора. Условный оператор if позволяет проверить некоторое условие и в зависимости от результата проверки выполнить то или иное действие. Условный оператор имеет вид:

if <логическое выражение>

then

<Оператор1>

[else

<Оператор 2>]

Оператор выбора case дает возможность выполнить одно из нескольких действий. В общем случае оператор ыбора имеет седующий вид:

Case <селектор> of

<список меток варианта>:< оператор 1>;

<список меток варианта>:< оператор 2>;

<список меток варианта>:< оператор 3>;

[else

<ОператорN>]

end;

2.3. Циклы

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

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

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

Операторы цикла:

- оператор While;

- оператор Repeat;

- оператор For.

При использовании оператора while условие повторения цикла запрашивается в начале цикла:

while выражение do оператор

Выражение после while должно быть логическим выражением. Оператор после do выполняется, если логическое выражение имеет значение true. Если после do, т.е. в цикле, должны быть выполнены несколько операторов, их следует поместить в операторные скобки begin и end. Если логическое выражение в начале имеет значение false, цикл вообще не выполняется.

Число повторений оператора repeat определяется ходом выполнения программы [1]. Оператор выполняется до тех пор, пока условие, стоящее после слова until, ложно.

repeat оператор until выражение

Выражение после repeat должно быть логическим выражением. Выражение после repeat выполняются до тех пор, пока логическое выражение после until не примет значение true [1]. Итак, построенный с помощью оператора repeat цикл выполняется по крайней мере один раз.

Оператор For используется для организации циклов с фиксированным, определяемым во время разработки программы числом повторений. Количество повторений цикла определяется начальным и конечным значениями переменной-счетчика. Переменная-счетчик должна быть целого типа (integer) [1].

for переменная: = выражение to выражение do оператор

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

2.4. Символы и строки

Каждому символу соответствует число – код символа. Получить доступ к отдельному символу строки, можно указав его номер в квадратных скоках после имени переменной (строки) [1].

2.5. Массивы

Массив – это структура дынных, представляющая собой совокупность элементов одного типа. Массив должен быть объявлен в разделе объявления переменных. При объявлении массива удобно использовать именованные константы. Доступ к элементу массива осуществляется путем указания индекса (номера) элемента, в качестве которого можно использовать выражение целого типа, например, целую константу или переменную типа integer. Для ввода, вывода и обработки массивов удобно применять инструкции циклов (for, while, repeat) [1].

2.6. Процедуры и функции

Подпрограмма - это именованная логически законченная группа операторов языка, которую можно вызвать для выполнения любое количество раз из различных мест программы [5]. Каждая подпрограмма определяется уникальным именем. В языке Паскаль существуют два типа подпрограмм - процедуры и функции. Главное отличие процедуры от функции заключается в том, что результатом функции является одно единственное значение. Все процедуры и функции языка Pascal подразделятся на два класса: стандартные и определенные пользователем.

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

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

Для передачи данных в функцию надо использовать только параметры (глобальные переменные, т.е. переменные, объявленные вне функции, применять не рекомендуется). Среди выполняемых инструкций функции обязательно должна быть инструкция присваивания значения функции. Тип каждого фактического параметра (константы или переменной) в инструкции вызова функции должен быть таким же, как тип соответствующего формального параметра, указанного при объявлении функции. Если в операторе объявления функции перед именем формального параметра не стоит слово var, то при вызове функции можно использовать в качестве формального параметра константу или переменную соответствующего типа. Если слово var указано, то формальным параметром может быть только переменная. Если параметры функции используются для возврата результата в программу, вызвавшую функцию, то в объявлении функции перед именем соответствующего параметра должно присутствовать слово var [1].

Для передачи информации в процедуру следует использовать параметры, а не глобальные переменные, т.е. объявленные вне процедуры. Тип каждого фактического параметра (константы или переменной) в операторе вызова процедуры должен соответствовать типу соответствующего формального параметра, указанного при объявлении функции. Если в операторе объявления процедуры перед именем формального параметра нет слова var, то в качестве формального параметра в инструкции вызова процедуры можно использовать константу или переменную соответствующего типа. Если слово var присутствует в инструкции, то формальным параметром можно назначить только переменную. Если аргумент процедуры применяется для возврата результата в программу, вызвавшую эту процедуру, то перед именем аргумента нужно поставить слово var [1].

2.7. Графика

В графическом режиме экран представляет собой совокупность точек, каждая из которых может быть окрашена в один из 16 цветов. Координаты точек возрастают слева направо и сверху вниз, левая верхняя точка имеет координаты (0,0), а правая нижняя – (63,479). Для того, чтобы программа могла выводить на экран графические примитивы (линии, окружности, прямоугольники), необходимо инициализировать графический режим [1].

Модуль растровой графики GraphABC обходится без объектов, хотя его возможности практически совпадают с графическими возможностями Borland Delphi. Он доступен в не событийных программах и позволяет легко создавать анимацию без мерцания. Модуль GraphABC содержит константы, типы, процедуры, функции и классы рисования в графическом окне. Они подразделяются на следующие группы:

-графические примитивы;

-действия с цветом;

-действия с пером;

- действия с кистью;

-действия со шрифтом;

-действия с графическим окном;

- задание режимов вывода.

2.8. Файлы

Текстовый файл – это файл, состоящий из компонентов, являющихся строками. Длина строки может изменяться от 0 до 255. Каждая строка завершается маркером конца строки.

Для описания файловых переменных текстового типа используется стандартный идентификатор text.

Для работы с текстовыми файлами предназначены следующие процедуры и функции:

Assign (FV, Str)-присваивание имени текстовому файлу.

Rewrite (FV) – открытие для создания нового текстового файла.

Reset (FV)-открытие уже существующего текстового файла.

Close (FV) – закрытие текстрового файла.

Read (FV, Ch) – считывание символа в Ch из текстового файла FV.

Write (FV, Ch) – занесение символьной переменной Ch в файл FV.

Readln (FV, Str) – чтение из файла FV строки Str.

Частный случай записи процедура: readln(FV); При этом пропускаются все символы, включая пробелы и маркер конца строки, т.е. происходит переход на новую строку. Такой вид записи процедуры может использоваться для подсчета количества компонентов в файле.

Writeln (FV, Str) – запись в файл FV строки Str. Частный случай написания процедуры: writeln (FV); применяется для записи в файл пустой строки, т.е. записывается только маркер конца строки. Это свойство используется для внесения в документы, инструкции, деловые письма строк-пробелов.

Append (FV) – открыть файл и установить указатель на маркер конца файла. Используется только для добавления новых компонентов в текстовые файлы.

Elon (FV) – функция возвращает булевское значение True, если указатель файла достиг маркера конца строки. В противном случае возвращает значение False.

SeekElon (FV) – функция, аналогичная предыдущей, но указатель файла переходит все пробелы и знаки табуляции. Возвращает значение True при достижении маркера конца строки.

SeekEof (FV) – функция возвращает значение True, если указатель файла находится на маркере конца файла.

2.9. Рекурсия

Программа, которая в процессе работы вызывает саму себя, по меньшей размерности называется рекуррентной.

В Pascal нельзя сделать рекуррентной саму программу, но можно написать рекуррентную подпрограмму, такая подпрограмма будет содержать в своём теле хотя бы один вызов подпрограммы с точно таким же именем [8].

Любое рекурсивное определение состоит из двух частей. Данные части называют базовой и рекурсивной. Базовая часть является не рекурсивной и задает определение для некоторой фиксированной части объектов. Рекурсивная часть определяет понятие через его же и записывается так, чтобы при цепочке повторных переменных она сводилась бы к базовой части.

Свойства рекурсивных объектов:

- простота построения;

- несхожесть конечного результата с начальными данными;

- внутреннее само подобие.

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

3. ОТЛАДКА ПРОГРАММ

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

Задача с использованием линейной структуры. Вычисление параллелограмма.

Решение:

Рис.3.1.

Решение задачи с использованием линейной структуры

Задача и использованием цикла while. Вычисление наибольшего общего делителя двух целых чисел.

Решение:

Рис.3.2.

Решение задачи с использованием цикла while

Задача и использованием цикла repeat. Вычисление среднего арифметического положительных чисел.

Решение:

Рис.3.3.

Решение задачи с использованием цикла repeat

Задача и использованием цикла for. Таблица степеней двойки.

Решение:

Рис.3.4.

Решение задачи с использованием цикла for

Задача на символы и строки. Приветствие.

Решение:

Рис.3.5.

Решение задачи символы и строки

Задача на решение одномерного массива. Подсчет количества ненулевых элементов массива.

Решение:

Рис.3.6.

Решение задачи на одномерный массив

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

Решение:

Function Glasn(sim:char): boolean;

const

ListOfGlasn:string ='АаЕеИиОоУуЫыЭэЮюЯя';

var

p: byte;

begin

p:=Pos(sim,ListOfGlasn);

if p <> 0

then Glasn:=True

else Glasn:=False;

end;

Задача нарисовать олимпийский флаг с помощью модуля GraphABC.

Решение:

Рис.3.7.

Решение задачи с использованием GraphABC

Задача с использованием файлов.Cсоздаёт на диске файл и записывает в него 5 целых чисел, введённых пользователем

Решение:

Рис.3.3.

Решение задачи с использованием файлов

Задача на рекурсию. Рекурсивная функция факториал.

Решение:

Рис.3.3.

Решение задачи с использованием рекурсивной функции

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

ЗАКЛЮЧЕНИЕ

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

Без основ языка Pascal будет тяжело изучать другие языки программирования, так как в любом другом языке, что-то взято из языка Pascal.

Этот язык учит дисциплинировать, так как даже малейший недочет в программе и тут же выдается ошибка (не компилирует программу).

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

Написав данную курсовую работу, я получила навык работы в PascalABC, научилась применять правильно различные процедуры и функции, циклы и модули, точно определять и задавать координаты различных линий, эллипсов, окружностей, прямоугольников и т.д. Так же я поняла, что научиться программировать можно только программируя, т.е. решая задачи. Чем больше времени потратить, решая задачи и делая работу над ошибками, тем большему я учусь.

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

Для себя могу выделать некоторые плюсы PascalABC: простота и понятность интерфейса программы (программа не требуют дополнительного обучения), легкость ввода и отслеживания.

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

БИБЛИОГРАФИЯ

1.Культин Н.Б. Turbo Pascal в задачах и примерах. – СПБ.:. БХВ-Петербург, 2006. -256с.: ил. - 9,31,32,41,44,47,53,55,56 с.

2. Зубок Д.А., Маятин А.В., Краснов С.В. Основы программирования в среде Turbo Pascal. Учебное пособие. Санкт-Петербург, 2009.

3.ГОСТ 19.701 – 90. ЕСПД. Схемы алгоритмов, программ данных и систем. Обозначения условные и правила выполнения. Москва, 2010.

4.Учебное пособие. Изучаем Паскаль. Л. Усольцева, Б. П. Зотьева, И. С. Сергеевой, В. Л. Лецко. Волгоградский государственный педагогический университет. Кафедра алгебры, геометрии и информатики. – 3, 16 с.

5.Cамоучитель по программированию на Free Pascal и Lazarus. Алексеев Е.Р., Чеснокова О.В., Кучер Т.В – 164 с.

6. Информатика и информационные технологии: конспект лекций. Авторы: А. Цветкова – 8 с.

7. Алгоритмический язык Паскаль. Учебное пособие по дисциплине «Программирование и основы алгоритмизации» / Моск. гос. ин-т электроники и математики; Сост. В.Г. Кулаков. М., 2010. - 11 с.

8. Паскаль для школьников. 2-е изд. Ушаков Денис Михайлович, Юркова Татьяна Анатольевна – СПб.: Питер, 2013. – 283 с.

ПРИЛОЖЕНИЕ

Таблица 1.

Типы переменных и объем памяти

Тип переменной

Занимаемая память, байт

Диапазон значений

CHAR

1

Любой диапазон

STRING

256

Строка до 256 символов

STRING [N]

1 x n

Строка до n символов

BYTE

1

0-255

WORD

2

0-65 535

INTEGER

2

-32 768-32 767

LONGITN

4

-2 147 483 648 – 2 147 483 647

REAL

6

2.9E-39-1.7e38

SINGLE

4

1.5E-45-3.4e38

DOUBLE

8

5.0E-324-1.7e308

EXTENDED

8

3.4E-4932-1.1e4932

Источник: Культин Н.Б. Turbo Pascal в задачах и примерах. – СПБ.:. БХВ-Петербург, 2006. -256с.: ил.

Таблица 2.

Процедуры и функции обработки строк

Процедура/Функция

Описание

Delete (St, Poz, N)

Удаление N символов строки St, начиная с позиции Poz

Insert (Str1, Str2, Poz)

Вставка строки Str1 d cnhjre Str2, начиная с позиции Poz

Str (IBR,St)

Преобразование числового значения величины IBR и перемещение результата в строку St

Продолжение таблицы 2.

Процедура/Функция

Описание

Val (St,IBR,Cod)

Преобразует значение St в величину целочисленного или вещественного типа и помещает результат в IBR. Значение St не должно содержать незначащих пробелов в начале и в конце. Cod –

целочисленная переменная, в которой содержится 0, если ошибки не обнаружено, и номер позиции первого ошибочного символа, если произошла ошибка. Значение IBR в этом случае не определено.

Copy (St,Poz,N)

Выделяет из строки St подстроку N символов, начиная с позиции Poz. Poz N- целочисленные выражения.

Concat (Str1, Str2,…StrN)

Выполняет сцепление строк Str1, Str2,…StrN в том порядке, в каком они указаны в списке параметров

Length(St)

Вычисляет текущую длину в символах строки St. Результат имеет целочисленный тип.

Pos(Str1,Str2)

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

UpCase(Ch)

Преобразует строчную букву в прописную. Параметр и результат имеют литерный тип.

Таблица 3.

Цвета для ввода текста

Константа

Цвет

Номер цвета

Black

Черный

0

Blue

Синий

1

Green

Зелёный

2

Cyan

Бирюзовый

3

Red

Красный

4

Magenta

Сиреневый

5

Brown

Коричневый

6

LightGray

Белый

7

DarkGrey

Серый

8

LightBlue

Голубой

9

LightGreen

Светло-зеленый

10

LightCyan

Свето-бирюзовый

11

LightRed

Светло-красный (алый)

12

LightMagenta

Светло-сиреневый

13

Yellow

Желтый

14

White

Белый, яркий

15

Источник: Культин Н.Б. Turbo Pascal в задачах и примерах. – СПБ.:. БХВ-Петербург, 2006. -256с.: ил.

Таблица 4.

Стили заполнения области

Константа

Стиль заполнения области

EmptyFill

Без заливки (сплошная заливка цветом фона)

SolidFill

Сплошная заливка текущим цветом

LineFill

Горизонтальная штриховка

LtSlashFill

Штриховка под углом 45 влево тонкими линиями

SlashFill

Штриховка под углом 45 влево

Продолжение таблицы 4.

Константа

Стиль заполнения области

BkSlashFill

Штриховка под углом 45 вправо тонкими линиями

LtBkSlashFill

Штриховка под углом 45 вправо

HatchFill

Штриховка клеткой

XhatchFill

Штриховка под углом 45 редкой косой клеткой

InterleaveFill

Штриховка под углом 45 частой косой клеткой

WideDotFill

Заполнение редкими точками

CloseDotFill

Заполнение частыми точками

UserFill

Тип заполнения определяется программистом

Источник: Культин Н.Б. Turbo Pascal в задачах и примерах. – СПБ.:. БХВ-Петербург, 2006. -256с.: ил.

Таблица 5.

Шрифты Pascal

Константа

Значение

Шрифт

DefaultFont

0

Стандартный. Каждый выводимый символ формируется в квадрате размером 8 на 8 пикселей.

TriplexFont

1

Triplex шрифт

SmallFont

2

Мелкий

SansSerifFont

3

SansSerif шрифт

GothicFont

4

Готический

Источник: Культин Н.Б. Turbo Pascal в задачах и примерах. – СПБ.:. БХВ-Петербург, 2006. -256с.: ил.

*в шрифтах, отличных от стандартного (DefaultFont), букв русского алфавита нет.