Автор работы: Пользователь скрыл имя, 13 Декабря 2011 в 20:04, курсовая работа
Тема моей курсовой работы: программирование с использованием подпрограмм пользователя. Задача курсового проектирования заключается в создание программы реализующую работу обычного кнопочного калькулятора, выполняющего основные арифметические операции. Данная программа позволяет вычислять выражения, содержащие численные значения. Программа предназначена для упрощения вычислений арифметических выражений. В современном мире использование калькулятора облегчает работу экономистов, инженеров и людей других профессий. В первую очередь это экономия времени и точность вычислений. Калькулятор, созданный в электронном виде имеет больше преимуществ, чем обычный кнопочный калькулятор. В первую очередь это удобство пользования и усовершенствование выполняемых функций.
Введение…………………………………………………………….………..4
1. Математическая постановка задачи…………………………….……….4
2. Описание алгоритма решения……………………………………..……..5
3.Обоснование выбора языка и средств поддержки
Технического программирования………………………………………….8
4.Описание процедур и функций ……………………………….…….…...8
5. Листинг программы…………..…………………………………….…..10
6. Результаты работы программы…..……………………………………20
Заключение………………………………………………………..…..……21
Список использованной литературы……………………..………..……..22
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Георгиевский технологический институт (филиал)
Государственное образовательное учреждение высшего профессионального образования
«Северо-Кавказский
Государственный Технический Университет»
Факультет Автоматизации и управления
Кафедра
Математических и естественнонаучных
дисциплин
Утверждаю
зав. Кафедрой МиЕНД
«
» 2008 г.
ПОЯСНИТЕЛЬНАЯ
ЗАПИСКА
к курсовому
проекту по дисциплине «Программирование
и основы алгоритмизации»
на тему:
Программирование с использованием
подпрограмм пользователя
Автор
проекта
Шиянова Дарья Игоревна
Специальность
220301(Автоматизация
Группа
АТП-071
Руководитель
проекта Мордасова Елена
Борисовна
Проект защищен
______________________________
Члены комиссии
г.
Георгиевск, 2008 г.
Оглавление
Введение…………………………………………………………
1. Математическая постановка задачи…………………………….……….4
2. Описание алгоритма решения……………………………………..……..5
3.Обоснование выбора языка и средств поддержки
Технического
программирования……………………………………
4.Описание процедур и функций ……………………………….…….…...8
5. Листинг программы…………..…………………………………….
6. Результаты работы программы…..……………………………………20
Заключение……………………………………………………
Список использованной
литературы……………………..………..……..
Введение.
Тема
моей курсовой работы: программирование
с использованием подпрограмм пользователя.
Задача курсового проектирования заключается
в создание программы реализующую работу
обычного кнопочного калькулятора, выполняющего
основные арифметические операции. Данная
программа позволяет вычислять выражения,
содержащие численные значения. Программа
предназначена для упрощения вычислений
арифметических выражений. В современном
мире использование калькулятора облегчает
работу экономистов, инженеров и людей
других профессий. В первую очередь это
экономия времени и точность вычислений.
Калькулятор, созданный в электронном
виде имеет больше преимуществ, чем обычный
кнопочный калькулятор. В первую очередь
это удобство пользования и усовершенствование
выполняемых функций.
1.Математическая постановка задачи
Необходимо создать библиотечный модуль, содержащий процедуры выполнения основных арифметических операций:
n=x+y, n=x-y, n=n*y, n=x/y, n= x div y, n=x mod y.
В программе
нужно осуществлять проверку на неверно
введенные символы и ошибочно нажатые
клавиши. Использованы приемы модульного
программирования. Тип результата операций
«+», «*», «-» является INTEGER. Результатом
операции «/» всегда является тип REAL, а
результат операций DIV и MOD всегда имеет
тип INTEGER. Тип вводимых данных строковый.
2. Описание алгоритма решения
Начала работы с калькулятором происходит с ввода первого операнда. После ввода, проводится проверка корректности введенных данных. Если найдена ошибка, на экран выводится сообщение «ошибка ввода». Если ошибка не была обнаружена, пользователь продолжает работу выбором арифметической операции. Далее вводится второй операнд, который также подвергается проверке. Для получения результата необходимо нажать кнопку «Результат», если требуется продолжение вычислений, выбирается следующая операция.
Алгоритм составленной
программы:
Данная программа позволяет вычислять выражения, содержащие численные значения. Следовательно, в алгоритме нужно осуществлять проверку на неверно введенные символы и ошибочно нажатые кнопки. Так же должна проверяется длина введенной строки, которая не должна превышать 8 символов.
Алгоритм проверки
корректности введенных данных:
Алгоритм работы функций:
3. Обоснование выбора языка и средств поддержки технического программирования.
Для создания программы было предложено две альтернативных среды Delphi и Pascal. Между тем синтаксисы Delphi и Pascal близки, обе программы – продукты Borland. Я предпочла использовать интегрированную среду программирования Delphi, позволяет достаточно быстро разрабатывать приложения для Windows. Так как среда Delphi создает программы полностью совместимые с графической оболочкой ОС MS Windows, то позволяет сделать интерфейс программы интуитивно понятным и простым в реализации. Так же среда позволяет использовать функции, предоставляемые операционной системой
Использована версия среды программирования Borland Delphi 7.0, компьютер Celeron 845 (оп. память 256 Мбайт). Delphi— английское написание названия древнегреческого города Дельфы, используемое как товарный знак некоторых программных продуктов компании Borland Software Corporation.
4.Описание процедур и функций
label error, endofproc;
begin
if length(str)>8 then goto error;
for n:=1 to length(str) do
begin
//ShowMessage(str[n]);
if (str[n]<'0') or (str[n]>'9') then goto error;
end;
TextToInt:=StrToInt(str);
goto endofproc;
error:
function OpPlus(x : integer; y : integer): integer;
begin
OpPlus:=x+y;
end;
function OpMinus(x : integer; y : integer): integer;
begin
OpMinus:=x-y;
end;
function OpDiv(x : integer; y: integer): integer;
begin
OpDiv:=x div y;
end;
function OpMod(x: integer; y : integer): integer;
begin
OpMod:=x mod y;
end;
Процедура умножения чисел
function OpUmnojenie(x : integer; y : integer): integer;
begin
OpUmnojenie:=x*y;
end;
Процедура деления чисел
function OpDelenie(x : integer; y : integer): real;
begin
OpDelenie:=x/y;
end;
5.Листинг программы.
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Unit2, ExtCtrls, Buttons;
type
TForm1 = class(TForm)
Pole: TEdit;
ltext: TLabel;
Shape1: TShape;
BitBtn1: TBitBtn;
Shape2: TShape;
Shape3: TShape;
Shape4: TShape;
Shape5: TShape;
Shape6: TShape;
Shape7: TShape;
Shape8: TShape;
Shape9: TShape;
Shape10: TShape;
Shape11: TShape;
Shape12: TShape;
Shape13: TShape;
Shape14: TShape;
Shape15: TShape;
Shape16: TShape;
Shape17: TShape;
Shape18: TShape;
Shape19: TShape;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Shape1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure BitBtn1Click(Sender: TObject);
procedure Shape13MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape15MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape8MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape7MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape17MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape9MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape12MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape16MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape6MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Shape11MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
Информация о работе Программирование с использованием подпрограмм пользователя