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

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    429,32 Кб
  • Опубликовано:
    2013-01-17
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Введение

Цель данной курсовой работы:

Создание программы калькулятора для вычисления математических примеров. Закрепление и демонстрация знаний, полученных при изучении курса «Информатика». Выполнение работы требует творческого подхода и всестороннего исследования поставленной задачи.

Тема данной курсовой работы:

«Разработка программы на алгоритмическом языке программирования Паскаль».

Актуальность данной курсовой работы:

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

Основные этапы:

. Анализ поставленной задачи;

. Выбор обоснованный и изложенный на основе метода поставленной задачи;

. Построение алгоритма решения задачи;

. Создание и отладка программы;

. Разработка комплекса тестов для проверки правильности работы программы;

. Защита курсовой работы.

1. Постановка задачи

Выполнение курсовой работы надо начать с четкого уяснения поставленной задачи. Необходимо ответить на вопросы: “Что задано?”, “Какой должен быть получен результат?”, “Как получить результат?”

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

При решении задач этой группы необходимо:

·    разработать пользовательское меню, которое будет содержать пункты «справка», «запуск программы», «выход»;

·        разработать программу для вычисления примера;

·        ответ должен быть получен достаточно быстро и предельно точно.

Условие задачи:

«Калькулятор»; разработать калькулятор, работающий с целыми числами. Он должен позволять вводить целые числа, складывать, вычитать, умножать, делить нацело, находить остаток от деления, возводить в целую степень.

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

2. Математические методы и средства решения задачи

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

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

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

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

Арифме́тика - раздел математики <#"600607.files/image001.gif"> предметов, а второй -  предметов, то их сумма будет содержать  предметов. Указанное действие носит название сложение, определяется символом «+» и является простейшей бинарной операцией. Из данного определения очевидным образом следуют коммутативный и ассоциативный законы сложения. При аддитивной системе нумерации не обязательно знать таблицу сложения, достаточно осуществить пересчёт <#"600607.files/image004.gif">

Независимо от него подобное определение дали немецкие математики Грассман <#"600607.files/image001.gif"> и  сопоставляет одно и только одно натуральное число , обладающее следующими свойствами

 для любого ,

 для любых  и .

Сложение натуральных чисел всегда выполнимо и однозначно.

Умножение

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

Умножение, как и сложение, определили независимо Больцано, Грассман и Ганкель. Умножение натуральных чисел выполняется по следующей формуле: . В Энциклопедии элементарной математики даётся следующее определение умножения натуральных чисел:

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

 для любого ,

 для любых  и .

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

Вычитание

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

Термин лат. <#"600607.files/image001.gif"> и  сопоставляет число , обладающее следующим свойством


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

Деление

Первое определение деления - это поиск числа, которое содержится в делимом столько раз, сколько единиц содержится в делителе. Такое определение дано в учебниках арифметики XIV века. Деление считалось очень сложной и громоздкой операцией. Современный способ деления, использующий частичные произведения делителя на отдельный разряды частного, представлен в итальянском манускрипте 1460 года. В «Энциклопедии элементарной математики» даётся следующее определение деления натуральных чисел:

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


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

Возведение в степень. Возвести число (основание степени) в целую степень (показатель степени) - значит повторить его сомножителем столько раз, каков показатель степени. Результат называется степенью. Запись возведения в степень:

5 = 3 · 3 · 3 · 3 · 3 = 243 .

Здесь 3 - основание степени, 5 - показатель степени, 243 - степень.

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

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

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

Структура программы.

В программе, написанной на языке Pascal, могут быть следующие разделы:

* заголовок программы: program имя;

* список используемых модулей: uses cписок используемых модулей;

* раздел объявления переменных: var

* раздел объявления процедур и функций: procedure, function,

* тело программы: begin, end.

Заголовок программы состоит из зарезервированного слова program и имени программы (со списком параметров, заключенных в круглые скобки). Завершается заголовок точкой с запятой.

Порядок размещения разделов произвольный. Разделы могут отсутствовать.

Тело программы начинается словом begin , а заканчивается словом end с точкой, которая является признаком конца программы.имя: тип=значение;

Обычные константы могут быть целого, вещественного, символьного, логического типа и типа string, типизированные константы- любого типа, кроме типа файл.

Раздел переменных:

В этом разделе должны быть описаны все переменные, встречающиеся в программе:список1:тип_1;

список2:тип_2;

список_1,список_2-перечень переменных через запятую. Тип переменной можно задать двумя способами :

а) указать имя типа из раздела type,

Раздел процедур и функций содержит описание процедур и функций, вызываемых в теле программы.

Тело программы содержит операторы языка Pascal.

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

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

3. Описание данных

Данные делятся на входные, выходные и промежуточные. Выбираются имена и типы данных, даются смысловые описания данных.

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

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

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

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

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

·    имена могут включать латинские буквы, цифры и знак подчеркивания (для простоты опустим некоторые другие символы, разрешенные в именах);

·        имя состоит из одного слова; если требуется пробел в имени, он заменяется на подчеркивание: так, My_1 будет правильным идентификатором, а My 1 - нет;

·        имя всегда начинается с буквы: допустим объект с именем A1, но не 1A; прописные и строчные буквы в именах не различаются Паскалем: x1 и X1 - это одна и та же величина;

·        имена не могут совпадать с зарезервированными в языке служебными словами, обозначающими определенные в языке операции над данными: например, нельзя назвать Begin или BEGIN ни одну величину в программе, так как begin - зарезервированное служебное слово, а прописные и строчные буквы в служебных словах также не различаются. Познакомиться с большинством служебных слов мы сможем в процессе изучения языка.

Константой называют величину, значение которой не меняется в процессе выполнения программы.

Название в задаче

Имя переменной или константы в программе, тип

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

Входные

сумма, разность, произведение, частное

a,b, integer

Переменные для вычисления


i: char

Переменная которой присваивается код нажатой клавиши

Промежуточные

возведение в степень

s,n: integer

Переменные для работы с массивами

Выходные


done: boolean

Проверка правильности ввода

ответ

c,d: integer

Вывод целого числа

ответ

r: real

Вывод вещественного числа


4. Алгоритмы и блок-схема

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

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

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

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

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

Свойства алгоритма:

Дискретность - алгоритм состоит из отдельных инструкций (шагов);

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

Массовость - алгоритм работает при меняющихся в некоторых пределах входных данных;

Результативность - за конечное число шагов достигается некоторый результат.

Формы записи алгоритма:

Принято выделять 2 основных формы.

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


Указанные на рисунке основные фигуры блок-схем интерпретируются так:

Прямоугольник - любая последовательность действий; внутри прямоугольника записываются формулы или словесное описание выполняемых действий;

Ромб - блок проверки условия; так как любое условие может быть только истинно или ложно, у блока 1 вход и 2 выхода, соответствующие действиям, выполняемым в случаях, когда условие истинно и когда оно ложно.

Выходы подписывают символами "+" и "-", или "да" и "нет", "1" и "0" и т.п.

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

Лист с разрывом - блок вывода данных.

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

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

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

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

Словесное описание - представляет структуру алгоритма на естественном языке (правил нет, произвольная форма).

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

Если вы нуждаетесь в помощи, нажмите F1 - помощь, и вам будут даны рекомендации по использованию данной программы; F2 - запуск программы; F4 - выход из программы.

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

Эта форма ближе к реальным языкам программирования.

Существует много различных вариантов псевдокода.

нач

вывод «Меню»:

2.      «Запуск калькулятора»

.        «Выход»

вводим 1, 2 или 3

если 1, то

нач

вывод «Справка»

кон

если 2, то

нач

вывод «Калькулятор»:

математические вычисления

кон

если 3, то

выход

кон

если 3 то Выход

Блок - схема



5. Программа на языке Паскаль

program calculator;

uses crt; {очистка экрана}

label m1, m2; {метки}

var: text;: char;: boolean;,b,c,d,s,n: integer;: real;{запуск меню}: clrscr;('---------------------');('F1 - справка');('F2 - запуск программы');('F3 - выход');('---------------------');:=readkey; {считывание кода клавиши}i of

#59: begin {запуск справки};('СПРАВКА');(' ');

writeln('      Программа предназначена для вычисления суммы, разности, произведения,');

writeln('нахождения частного и остатка, вычисления степени.');

writeln('      Для корректного использования программы рекомендуется переключиться');

writeln('на английский расклад клавиатуры.');

writeln('      Горячие клавиши во время выполнения вычислений не действуют. Поэтому');

writeln('рекомендуется сначала довести вычисления до нахождения ответа.');

writeln('      Для вычисления необходимо вводить целые (не дробные) числа.');

writeln(' ');

writeln('      Горячие клавиши: ');

writeln('F1 - справка');

writeln('F2 - запуск программы');

writeln('F4 - выход');(' ');('Для нахождения ответа на необходимую задачу необходимо ввести число,');

writeln('затем нажать «Enter». Нажать соответствующую клавишу необходимого действия:');

writeln('+,-,*,/,^ (нажимать "Enter" необязательно). Затем можно сразу начинать вводить');

writeln('следующее значение и после нажать "Enter".');

writeln(' ');(' ');(' ');

writeln('для возврата в главное меню нажмите "Backspace"');

writeln('для начала вычислений нажмите "Enter"');

end;

#60: begin {запуск калькулятора}

m1: clrscr;

writeln(введите число: ');

read(a); {ввод первой переменной}

i:=readkey;i of

#43: begin {сумма}('+');(b);:=a+b;('ответ: ',c);(' ');(' ');('для продолжения вычислений нажмите "Enter"');

writeln('для выхода в главное меню нажмите "Backspace"');

writeln('для записи нажмите F3');

end;

#45: begin {разность}('-');(b);:=a-b;('ответ: ',c);(' ');(' ');

writeln('для продолжения вычислений нажмите "Enter"');

writeln('для выхода в главное меню нажмите "Backspace"');

writeln('для записи нажмите F3');

end;

#42: begin {произведение}('*');(b);:=a*b;('ответ: ',c);(' ');(' ');

writeln('для продолжения вычислений нажмите "Enter"');

writeln('для выхода в главное меню нажмите "Backspace"');

writeln('для записи нажмите F3');

end;

#47: begin {частное}('/');(b);:=a div b;:=a mod b;:=a/b;('ответ: ',c,' и остаток: ',d,', либо: ',e:2:3);(' ');(' ');('для продолжения вычислений нажмите "Enter"');

writeln('для выхода в главное меню нажмите "Backspace"');

writeln('для записи нажмите F3');

end;

#94: begin {возведение в степень}

c:=1;('^');(n);s:=1 to n do:=a*c;('ответ: ',c);(' ');(' ');

writeln('для продолжения вычислений нажмите "Enter"');

writeln('для записи нажмите F3');

end;;;

#13: goto m1; {ссылка в калькулятор}

#107: begin

clrscr;

writeln(‘программа закрывается нажатием кнопки F4');

end;

#8: goto m2; {ссылка в меню}

#61: begin {запись в файл}

assign(pr,'Otvet.txt');

rewrite(pr);(pr,c);(pr);('записано');;

#62: exit; {выход};;done;.

калькулятор вычитание умножение деление

6. Тестовый пример

Произведите необходимые вычисления на представленной программе:


. Руководство пользователя для работы с программой

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

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

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

Горячие клавиши во время выполнения вычислений не действуют. Поэтому рекомендуется, сначала довести вычисления до нахождения ответа.

Для вычисления необходимо вводить целые (не дробные) числа.

Горячие клавиши:

F1 - справка

F2 - запуск программы

F4 - выход

Для нахождения ответа на необходимую задачу необходимо ввести число, затем нажать «Enter». Нажать соответствующую клавишу необходимого действия: +,-,*,/,^ (нажимать "Enter" необязательно). Затем можно сразу начинать вводить следующее значение и после нажать "Enter".

Заключение

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

Благодаря данной программе мы можем быстро сосчитать математический пример и узнать ответ. Эта программа значительно сократит время на необходимые расчёты и оставит время на другие занятия.

Список литературы

1.   Кореневская О. В. Турбо Паскаль 7.0 «Шпаргалка» Кореневская О. В. - М.: НТ Пресс, 2007

Похожие работы на - Разработка программы на алгоритмическом языке программирования Паскаль

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!