Описание разработанных алгоритмов программы
Рис.3.1 Алгоритм программы "Калькулятор".
Для создания программы калькулятор необходимо реализовать алгоритм, позволяющий иметь возможность, при выборе действия (операции), выводить ее на экран и получать результат вычислений. Также необходимо организовать возможность сброса полученных результатов.
Для повышения удобства пользования программой разработан понятный графический интерфейс, то есть все возможные операции, которые пользователь может производить в программе, выведены непосредственно на экран пользователя.
Руководство пользователя
Требования к аппаратуре и программному обеспечению
Так как программа выполнена в среде программирования Turbo Pascal, то требования к аппаратному и программному обеспечению минимальны.
ПК с процессором, совместимым с Intel Pentium или AMD, монитором и клавиатурой. Операционная система MS-DOS или MS Windows (кроме Windows 7, так как на данной операционной системе приложение не может работать в полноэкранном режиме).
Установка программы
Установка программы на компьютер пользователя заключается в копировании папки программы и установки ярлыка на Рабочий стол. Создайте в любом разделе жесткого диска новую папку и скопируйте в нее все файлы папки "Курсовой проект".
Запускать следует файл GRCALC. EXE непосредственно из папки или при помощи ярлыка кнопкой Enter или двойным щелчком мыши.
|
|
Если требуется доработка программы, то необходимо иметь исходный файл GRCALC. PAS, который открывается в среде программирования TURBO PASCAL версии 7 или совместимой с ней. Порядок работы с программой опишем в руководстве пользователя. Здесь приводится описание приемов управления программой.
Порядок работы
Запуск программы производится двойным щелчком мыши на файле GRCALC. EXE или на его ярлыке.
После запуска открывается окно программы. Далее в поле данных мы должны ввести первое число, затем операцию, которую мы хотим выполнить, а затем второе число. Нажимаем кнопку "=". Далее получаем результат выполнения действия. Можно сбросить результат (нажать "C") или продолжить работу с ним.
Заключение
В результате выполнения данного курсового проекта был разработан игровой программный продукт "Калькулятор". При помощи этой программы можно высчитывать определенные арифметические операции. Программа не занимает много места, не требовательна к установленному программному обеспечению.
Также было проведено исследование полученного программного продукта. В результате были выявлены следующие достоинства и недостатки полученного программного продукта:
|
|
Достоинства:
· Существует возможность сбрасывать результат;
· Программный продукт малотребователен к системным ресурсам компьютера.
Недостатки:
· Невозможность выполнения некоторых других математических операций;
· Невозможность сохранения операндов или результатов в памяти программы;
В целом, поставленная в начале курсового проекта цель была достигнута. В программе выполняются все необходимые функциональные требования.
Список литературы
1. Фаронов, В.В. Программирование в Delphi 7: учеб. пособие / В.В. Фаронов. - 7-е изд., перераб. - М.: Нолидж, 2006. - 412с.
2. Ставровский, А.Б. Delphi в задачах и примерах: учеб. для вузов / А.Б. Ставровский. - Киев: BНV, 2004. - 399с.
3. Кнут, Д.Э. Искусство программирования: учеб. пособие: в 3 т.: пер. с англ. Т.1: Основные алгоритмы. - 3-е изд. - М. и др.: Вильямс, 2000. - 720 с.
4. Гловацкая, А.П. Методы и алгоритмы вычислительной математики: учеб. пособие для вузов / А.П. Головыцкая. - М.: Радио и связь, 1999. - 408с.
5. Бежанова, М.М. Практическое программирование: структуры данных и алгоритмы: учеб. для вузов / М.М. Бежанова, Л.А. Москвина, И.В. Поттосин. - М.: Логос, 2001. - 223с.
Приложения
Приложение 1
Листинг программы
unit Unit1;
|
|
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, XPMan, jpeg, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
BitBtn5: TBitBtn;
BitBtn6: TBitBtn;
BitBtn7: TBitBtn;
BitBtn8: TBitBtn;
BitBtn9: TBitBtn;
BitBtn10: TBitBtn;
BitBtn11: TBitBtn;
XPManifest1: TXPManifest;
BitBtn14: TBitBtn;
BitBtn13: TBitBtn;
BitBtn15: TBitBtn;
BitBtn16: TBitBtn;
BitBtn17: TBitBtn;
BitBtn12: TBitBtn;
Image1: TImage;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure BitBtn9Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure BitBtn11Click(Sender: TObject);
procedure BitBtn14Click(Sender: TObject);
procedure BitBtn13Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn15Click(Sender: TObject);
procedure BitBtn16Click(Sender: TObject);
procedure BitBtn17Click(Sender: TObject);
procedure BitBtn12Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var a,b:real;//числа над которыми производятся операции
dlina,f:byte;{dlina-максимальная длина вводимого числа,
f-проверяет первый ли этот символ}
zn:char;//Знак операции
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'1'
|
|
else begin
f:=0;
form1.Edit1.Text:='1';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'2'
else begin
f:=0;
form1.Edit1.Text:='2';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'3'
else begin
f:=0;
form1.Edit1.Text:='3';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn7Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'4'
else begin
f:=0;
form1.Edit1.Text:='4';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn9Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'5'
else begin
f:=0;
form1.Edit1.Text:='5';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn4Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'6'
else begin
f:=0;
form1.Edit1.Text:='6';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn5Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'7'
else begin
f:=0;
form1.Edit1.Text:='7';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn6Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'8'
else begin
f:=0;
form1.Edit1.Text:='8';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn10Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'9'
else begin
f:=0;
form1.Edit1.Text:='9';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn8Click(Sender: TObject);
begin
if dlina<13 then begin
if f=0 then Form1.Edit1.Text:=Form1.Edit1.Text+'0'
else begin
f:=0;
form1.Edit1.Text:='0';
end;
inc(dlina);
end;
end;
procedure TForm1.BitBtn11Click(Sender: TObject);
begin
form1.Edit1.Text:='';
end;
procedure TForm1.BitBtn14Click(Sender: TObject);
begin
a:=strtofloat(form1.Edit1.Text);
f:=1;//следующий символ будет первым
dlina:=0;//готовимся для считывания 2 числа
zn:='+';
end;
procedure TForm1.BitBtn13Click(Sender: TObject);
begin
b:=strtofloat(form1.Edit1.Text);
if zn='+'then form1.Edit1.Text:=floattostr(a+b);
if zn='-'then form1.Edit1.Text:=floattostr(a-b);
if zn='*'then form1.Edit1.Text:=floattostr(a*b);
if (zn='/')and(b<>0)then form1.Edit1.Text:=floattostr(a/b);
//если 2 число равно 0, то ...
if (zn='/')and(b=0)then form1.Edit1.text:='ERROR=)';
zn:='0';//сбрасывем знак операции
dlina:=0;
f:=1;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
dlina:=0;
f:=0;
zn:='0';
end;
procedure TForm1.BitBtn15Click(Sender: TObject);
begin
a:=strtofloat(form1.Edit1.Text);
f:=1;
dlina:=0;
zn:='-';
end;
procedure TForm1.BitBtn16Click(Sender: TObject);
begin
a:=strtofloat(form1.Edit1.Text);
f:=1;
dlina:=0;
zn:='*';
end;
procedure TForm1.BitBtn17Click(Sender: TObject);
begin
a:=strtofloat(form1.Edit1.Text);
f:=1;
dlina:=0;
zn:='/';
end;
procedure TForm1.BitBtn12Click(Sender: TObject);
var s:string;
p:byte;
begin
if f=1 then begin edit1.Text:='';
f:=0;
end;
p:=0;
s:=form1.Edit1.Text;
p:=pos(',',s);
if p=0then
if s=''then begin form1.Edit1.Text:='0,';
dlina:=dlina+2;
end
else begin
form1.Edit1.Text:=form1.Edit1.Text+',';
inc(dlina);
end;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
//обрабатывем нажатие клавиши
case key of
'0'..'9':begin
if dlina=0 then edit1.Text:='';
if length(form1.Edit1.Text)>12 then key:=chr(0);//символ не добавляем
inc(dlina);
end;
#8:;//это код кнопки BackSpace
else key:=chr(0);
end;
end;
end.
en
Приложение 2
Графический интерфейс программы
Рис.1. Графический интерфейс программы
Рис.2. Программа во время работы
Размещено на Allbest.ru
Дата добавления: 2018-09-22; просмотров: 403; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!