Файл: Основы программирования на языке Pascal(История развития языка Pascal).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 273

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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