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

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

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

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

Добавлен: 25.06.2023

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

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

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

ВВЕДЕНИЕ

Целью данной курсовой работы является теоретическое и практическое рассмотрение основ программирования на языке Pascal. Для реализации практической задачи используется среда разработки PascalABC.NET.

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

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

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

Задачами теоретической части курсовой работы являются:

  • определение понятия и свойств алгоритма;
  • рассмотрение алфавита, выражений и типов данных;
  • подробный анализ операторов языка Pascal, то есть операторов присваивания, ввода/вывода, условного оператора if, циклов for, while и repeat..until, а также операторов, прерывающих выполнение циклов.

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

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


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

Алгоритм, свойства алгоритма

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

Таким образом, для решения задачи необходимо:

  1. Осуществить ввод исходных данных.
  2. Преобразовать эти данные в результат.
  3. Вывести полученный результат вычислений.

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

Для создания алгоритма нужно знать следующее:

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

Полученный в результате алгоритм или программа должны обладать следующими свойствами:

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

Алфавит языка Паскаль

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

Латинские буквы

от A до Z (прописные) и от а до z (строчные)

Цифры

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

Шестнадцатеричные цифры

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F

Специальные символы

+ — * / = < > [ ] . , ( ) : ; { } ^ @ $ #

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

:= знак присваивания;

<= меньше или равно;

>= больше или равно;

(* *) ограничители комментариев;

<> не равно;

(..) эквивалент [].

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

Данные и величины, типы данных, выражения

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

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

Константа — это неизменяемая величина. Переменные могут менять свои значения по ходу выполнения программы, и представлены символическими именами — идентификаторами. Любая переменная, как и константа, занимает ячейку памяти, а значение этой величины определено двоичным кодом, хранящимся в этой ячейке.

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


Первичными в иерархии являются простые типы. Такие типы присутствуют в большинстве языков программирования и называются простыми.

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

Если использовать целочисленные числа, следует помнить о вложенности типов. Это означает, что тип с меньшим диапазоном может быть вложен в тип с большим диапазоном. Так, тип Byte может быть вложен во все типы, которые требуют для хранения 2 и 4 байта, и в тоже время тип Short Int, который занимает 1 байт, не может быть вложен в тип Word, потому что не имеет отрицательных значений.

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

Примеры:

2358.8395

0.23588395*104

0.23588395*E4

Могут быть выделены 5 вещественных типов:

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

Рассмотрим символьный тип Char - значениям символьного типа являются 256 символов из множества символов, допустимых кодовой таблицей используемого компьютера. Диапазон от 0 до 127 представляет начальную область этого множества и соответствует множеству кодов ASCII, содержащих символы арабских чисел, алфавита и набора специальных символов. Символы данного диапазоны всегда присутствуют на клавиатуре персонального компьютера, а старшая область является альтернативной и содержит символы национального алфавита, некоторые специальные символы и символы псевдографики, которые не соответствуют кодам ASCII.

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

Var

C: Char;


C := ’A’;

C := #65;

В логическом (булевском) типе имеются два значения: Истина (True) и Ложь (False). Переменная логического типа задается служебным словом Boolean. Значение булевского типа занимает один байт в оперативной памяти. Значениям Истина и Ложь ставятся в соответствие числовые значения 1 и 0.

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

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

Символ операции

Название операции

Пример

*

умножение

2*3 (результат: 6)

/

деление

30/2 (результат: 1.5E+01)

+

сложение

2+3 (результат: 5)

-

вычитание

5-3 (результат: 2)

div

целочисленное деление

5 div 2 (результат: 2)

mod

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

5 mod 2 (результат: 1)

Для работы с переменными типа Boolean в Паскаль существуют следующие логические операции:

  • NOT - логическое отрицание ("НЕ")
  • AND - логическое умножение ("И")
  • OR - логическое сложение ("ИЛИ")
  • XOR - логическое "Исключающее ИЛИ"

В таблице истинности представлены результаты логических операций над переменными A и B на всех возможных наборах значений:

A

B

not A

A and B

A or B

A xor B

true

true

false

true

true

false

true

false

false

true

true

false

true

true

false

true

true

false

false

false

false

false

Операциями отношения в Паскаль являются следующие операции:

> - больше

< - меньше

= - равно

<> - не равно