84807

Разработка программы на языке Free Pascal

Курсовая

Информатика, кибернетика и программирование

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

Русский

2015-03-22

280 KB

1 чел.

PAGE  16

Оглавление

[1] Оглавление

[2]         
Введение

[3]
1. Анализ технического задания и постановка задачи проектирования

[4]
2. Разработка алгоритма программы

[5] 3. Описание программ

[6] 4. Инструкция оператору

[7] В данном окне пользователь вводит значения всех переменных. После заполнения всех полей и нажатия клавиши Enter программа выдает значения:

[8] Для завершения данной программы необходимо нажать клавишу Enter

[9]
ЗАКЛЮЧЕНИЕ

[10]
Приложение А

[11] Блок-схема программы № 2

[12] Код программы №1

[13] end.

[14] Код программы №2

[15] end.

[16] Код программы №3

[17] end.
Приложение В

        
Введение

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

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

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


1. Анализ технического задания и постановка задачи проектирования

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

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

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

Под модулем будет пониматься ряд стандартных модулей представленных в Free Pascal.

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

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

Разработку всех программ можно разбить на 3 этапа.:

  1.  Составление алгоритма, перевод формул в формат понятный Free Pascal и определение всех возможных значений, которые могут принять переменные.
  2.  Разработка структуры программ с улучшением удобности принятия данных и их выводом.
  3.  Подготовка тестовых исходных данных и отладка программы.

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

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

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

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

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

– запрашивать начальные значения переменных;

– проверять начальные данные;

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

– выводить конечные значения;

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


2. Разработка алгоритма программы

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

В связи с требованиями, приведенными выше можно составить словестный алгоритм программы:

  1.  Запустить скомпилированный *.exe файл программы
  2.  Запросить начальные данные у пользователя:
    1.  Проверить возможность данных;
    2.  Провести вычисления;
  3.  Вывести полученное значение:
  4.  При нажатии «Enter» закрыть программу.

3. Описание программ

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

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

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

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

4. Инструкция оператору

При запуске программы оператор видит следующее окно:

В данном окне пользователь вводит значения всех переменных. После заполнения всех полей и нажатия клавиши Enter программа выдает значения:

Для завершения данной программы необходимо нажать клавишу Enter


ЗАКЛЮЧЕНИЕ

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

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


Приложение А

Блок-схема программы №1:

Блок-схема программы № 2

Блок-схема программы № 2


Приложение Б

Код программы №1

uses math;

label ext;

var

       a,x,y:real;

begin

       writeln('Vvedite x');

       readln(x);

       writeln('Vvedite a');

       readln(a);

       if x<0 then

       goto ext

       else

       y:=sqrt(sqrt(x-a))*sinh(x)+cosh(x);

       writeln(y:2:2);

       ext: writeln('x need be more 0');

       readln;

end.

Код программы №2

label 1,2,3,4;

var

       a,b:integer;

       s,fa,fb,f:real;

begin

       write('ot:');

       read(a);

       writeln();

       write('do:');

       read(b);

       fb:=(exp(ln(2)*b)/ln(2))+(exp(ln(3)*b)/ln(3));

       fa:=(exp(ln(2)*a)/ln(2))+(exp(ln(3)*a)/ln(3));

       if a<0 then

       if b>0 then

       goto 1

       else

       goto 2

       else

       if b>0 then

       goto 3

       else

       goto 4;

       1: f:=fb+fa;

       writeln(f:1:1);

       2: f:=fa-fb;

       writeln(f:1:1);

       3: f:=fb-fa;

       writeln(f:1:1);

       4: f:=fb+fa;

       writeln('-',f:1:1);

       readln;

       readln;

end.

Код программы №3

function f(x:real):real;

begin

       f:=x*sqrt(exp(ln(x-1)*3))-2;

end;

label ex,ext;

var

       x,y,a,b,max,min:real;

begin

       write('Start:');

       readln(a);

       write('End:');

       readln(b);

       if a=1 then

               goto ex

       else

       max:=f(a);

       min:=max;

       x:=a+1;

       while x<=b do

       begin

               x:=x+1;

               y:=f(x);

               if y>max then max:=y;

               if y<min then min:=y;

       end;

       writeln('Min=',min:3:3);

       writeln('Max=',max:3:3);

       goto ext;

       ex: writeln('a can not be 1');

       readln;

       ext: readln;

end.
Приложение
 В

Скриншот работы программы №1

Скриншот работы программы №2

Скриншот работы программы №3


 

А также другие работы, которые могут Вас заинтересовать

24737. Перечислить и дать характеристику основным причинам сложности программного обеспечения. Общие признаки любой сложной системы; приемы борьбы со сложностью ПО 328 KB
  Модульность это представление системы в виде совокупности обособленных сегментов связь между которыми обеспечивается посредством связей между классами определяемыми в этих сегментах. Ещё бывает динамический полиморфизм при котором реализация функциичлена класса выбирается в зависимости от фактического типа указателя на объект через который она вызывается. Общее понятие класса языка С. Синтаксис описания класса.
24738. Теория языков программирования и методы трансляции 233.96 KB
  Если синтаксический анализ предназначен для распознавания и проверки правильности различных конструкций языка с точки зрения их синтаксиса структуры то семантический анализ предназначен для контроля этих конструкций с точки зрения их смыслового содержания. Фаза генерации кода предназначена для перевода промежуточной программы на машинный язык мы будем предполагать коды Ассемблера. Языки...
24739. Системы искусственного интеллекта. Модель логики предикатов первого порядка 418.5 KB
  Задаваемые при описании формальной системы правила вывода называют также правилами вывода заключений т. Различают два типа правил вывода. Правила вывода. Правила вывода устанавливают отношения на множестве формул исчисления высказываний.
24740. Линейные списки – стеки, очереди, деки. Набор процедур для работы со связанным стеком, очередью 1.08 MB
  Способы обхода бинарного дерева. Древовидная структура – это конечное множество содержащее один или более узлов n такое что: 1 имеется один специально обозначенный узел называемый корнем данного дерева. Линия связи между парой узлов дерева называется обычно ветвью. Те узлы которые не ссылаются ни на какие другие узлы дерева называются листьями или терминальными вершинами рис.
24741. English Speaking Countries 17.49 KB
  The Commonwealth of Australia territories are the continent of Australia the island of Tasmania and number of smaller islands. Australia has an area of nearly eight million square kilometres. The population of Australia is over sixteen million people.
24742. Outstanding people of Russia Federation 16.41 KB
  The names of Russian scientists and writers poets composers and painters are worldfamous Pushkin Lermontov Chehov Levitan. It is almost impossible to name a branch of science in the development of which the Russian scientists haven't played the greatest role. Works of our Russian writes and poets are translated into many languages.
24743. Службы разрешения имен DNS и WINS 15.76 KB
  Для решения этой проблемы Windows XP и Windows Server 2003 обеспечивают возможность сопоставления разрешения IPадреса с именем компьютера. В состав Windows XP и Windows Server 2003 входят также две службы обеспечивающие централизованное хранение информации о соответствии имен компьютеров IPадресам и обслуживание запросов на поиск такого соответствия: служба WINS Windows Internet Name Service обеспечивающая управление именами NetBIOS. Эта служба включена для поддержки клиентских компьютеров управляемых версиями Windows 9x Me NT; ...
24744. Сетевая технология 23.5 KB
  Принципиально эти решения можно разделить на три группы: передача разных типов трафика по отдельным физическим линиям создание двух независимых сетевых инфраструктур; передача различных типов трафика по одной линии; преобразование одного вида трафика в другой с последующей транспортировкой и коммутацией.