Методы обработки информации при решении прикладных задач. Математическая модель задачи. Блок-схема алгоритма программы. Компоненты, которые используются для работы в программе: элементы интерфейса; процедуры; операторы. Текст программы с пояснениями.
Аннотация к работе
Информация (ФИО, адрес, дата, тариф, начислено, долг, заранее оплачено) должна вводиться пользователем. Label11: TLABEL;Label12: TLABEL;Label13: TLABEL;Label14: TLABEL;Label15: TLABEL;Label16: TLABEL;Label17: TLABEL;Label18: TLABEL;Label19: TLABEL; Button4: TBUTTON;Кнопка Скрыть 2.Процедуры: процедуры КНОПКА НАЖАТЬ procedure Button1Click(Sender: TOBJECT); Нажатие кнопки РАСЧИТАТЬ procedure Button2Click(Sender: TOBJECT); Нажатие кнопки АВТОР procedure Button3Click(Sender: TOBJECT); Нажатие кнопки БЛАНК procedure Button4Click(Sender: TOBJECT); Нажатие кнопки СКРЫТЬ После ввода нажимаем кнопку РАСЧИТАТЬ после чего на экран будет выведено сообщение с результатом (рис.Выполняя курсовую работу я научился пользоваться средой программирования Delphi 7, освоил работу с графическим интерфейсом и научился его создавать, нашел большие различия между средами Pascal и Delphi 7 и некоторые сходства, получил новые теоретические и практические знания по программированию в новой на тот момент (ни разу до этого момента не работал с delphi 7) для меня средой программирования которой теперь с удовольствием пользуюсь и для других целей.
Введение
Цель курсовой работы обобщение, закрепление и углубление знании, полученных за время изучения дисциплины;
получение практических навыков подготовки инженерно-технических задач к решению на компьютере (ПК);
ознакомление с наиболее распространенными методами обработки информации при решении прикладных задач;
закрепление навыков работы в Pascal;
получение навыков в использовании научно-технической и нормативной литературы, ГОСТОВ;
приобретение опыта в оформлении текстовых и графических материалов курсовых работ.
1. Задание на курсовую работу
Задание: разработать и реализовать программу расчета платежей за потребленную электроэнергию.
Информация (ФИО, адрес, дата, тариф, начислено, долг, заранее оплачено) должна вводиться пользователем. Программа должна корректно воспринимать данные, а также обрабатывать их с целью получения полной информации о предстоящем платеже за электроэнергию с учетом как тарифа и текущих начислений, так и с учетом долга и заранее погашенных платежей.
Тариф обозначим как переменную а, начислено обозначим как переменную b, долг обозначим как переменную с, а заранее оплачено обозначим как переменную d.
Так как РЕЗУЛЬТАТ равен (тариф*начислено) долг-заранее оплачено то в формульном виде это будет выглядеть следюющим образом: X:=(a*b) c-d. Блок-схема алгоритма программы
5. Разработка программы
Для работы в программе используются: 1.Элементы интерфейса: TFORM1 = class(TFORM) экран приложения
3.Операторы: STRTOFLOAT - перевод строчной величины в вещественную
SHOWMESSAGE - вывод сообщения
FLOATTOSTRF - перевод вещественной величины в строчную
IF…THEN - Оператор условия
Элемент интерфейса.Caption:= - Изменение заголовка/текста элемента
Элемент интерфейса.Visible:= - Изменение видимости элемента (True/False)
Элемент интерфейса.Height:=Изменение высоты элемента;
Сложение ( )
Вычитание(-)
Умножение (*)
6. Руководство пользователя
Системные требования: Платформа: PC
Операционная система: Windows xp/vista/seven.
Совместимость с Linux: не тестировалась.
Процессор: Pentium 3 800MHZ и выше.
Оперативная память: 128 и выше.
Объем на HDD: 544 КБ (557 056 байт)
Для начала работы с программой щелкните 2 раза левой кнопкой мыши по иконке «Миниэлектрик V 1.0.exe» вследствие чего откроется главное окно программы с которым впоследствии мы и будем оперировать (рис. 1).
Рис. 1
Для начала введем данные для расчетов про помощи клавиатуры в следующие поля (рис. 2):
Рис. 2
ФИО это имя и инициалы абонента
АДРЕС это адрес его прописки
ДАТА это текущее число и месяц
ТАРИФ это стоимость за Квт. энергии в рублях (дробные числа вводятся в формате 3,5 в противном случае будет выведено сообщение об ошибке)
НАЧИСЛЕННО это сколько вам «накрутил» КВТ в этом месяце счетчик.
ДОЛГ это ваша задолженность по предыдущим периодам (если таковая имеется) (рис. 3).
Рис. 3
Заранее оплачено это размер платежей внесенных вами заранее (если таковые имеются)
Для удобства пользователя в программу встроен календарь, который поможет вам мгновенно вспомнить текущую дату. Найти его всегда можно в левом нижнем углу.
После ввода нажимаем кнопку РАСЧИТАТЬ после чего на экран будет выведено сообщение с результатом (рис. 4).
Рис. 4
Для продолжения работы с программой нажмите ОК.
Под кнопкой РАСЧИТАТЬ теперь мы видим текущую оценку ваших расходов которая меняется в зависимости от величины результата (рис. 5).
Рис. 5
Рис. 6
Программа также имеет второй режим работы - вывод бланка. Для вывода бланка нажмите кнопку БЛАНК (рис. 6).
На экран будет выведен бланк с результатом (рис. 7)
Рис. 7
Для возврата программы в нормальный вид нажмите кнопку СКРЫТЬ.
Для получения информации об авторе нажмите кнопку АВТОР после чего на экран будет выведено окно с информацией о создателе программы.
Для завершения работы с программой нажмите на крестик в верхнем правом углу.
7. Текст программы с пояснениями unit Unit1; //Имя программы// interface uses
//Присваиваем переменным значения введенные пользователем в строки // a:= STRTOFLOAT(Edit4.Text); //переводим строчные переменные в вещественные для дальнейших вычислений.// b:= STRTOFLOAT(Edit5.Text);
c:= STRTOFLOAT(Edit6.Text);
d:= STRTOFLOAT(Edit7.Text);
rez := (a*b) c-d;
//вывод сообщения с результатом //
SHOWMESSAGE("Уважаемый " Edit1.Text #13 "Проживающий по адресу " Edit2.Text #13
"Сообщаем вам что на " Edit3.Text #13 "вы должны "
//Создание так называемой «системы оценки». Это так называемый Easter egg программы - в зависимости от полученной суммы программа будет выводить различные сообщения (используется оператор УСЛОВИЕ)//
If rez<10 then begin label9.Caption :="Так мало... Вы как так умудрились?";end;
If rez>10 then begin label9.Caption :="Вы счастливчик !!! Это совсем немного";end;
If rez=0 then begin label9.Caption :="Поздравляю вы не должны ни копейки"; end;
If rez<0 then begin label9.Caption :="Вы жулик !!! это невозможно"; end;
If rez>500 then begin label9.Caption :="Хм... немало... но терпимо"; end;
If rez>1000 then begin label9.Caption :="Ого... многовато"; end;
If rez>5000 then begin label10.Caption :="Быстро выключайте все !!! Уже и так света понажгли !!!"; end;
If rez>10000 then begin label9.Caption :="Вам капец..."; end;
If rez>50000 then begin label9.Caption :="Сдается мне вы юморист..."; end;
If rez>1000000 then begin label9.Caption :="Хватит прикалываться !!!"; end;
SHOWMESSAGE("Автор и разработчик данной программы: " #13 "Оробец Максим Сергеевич НИЭИ ДВГТУ Группа 8221 2 курс " #13 "Программа написана на Delphi 7.Код программы мой на 100 %" #13 "Надеюсь вам понравилось");
end;
//Описание процедуры НАЖАТЬ НОПКА 3 (бланк)//
//перед выводом бланка программа предворительно рассчитывает данные используя алгоритм приведенный выше но вместо вывода сообщения «выводит» бланк// procedure TFORM1.Button3Click(Sender: TOBJECT);
//Предыдущий алгоритм расчета и оценки// var a: Real48;
b: Real48;
c: Real48;
d: Real48;
rez:Real48;
begin a:= STRTOFLOAT(Edit4.Text);
b:= STRTOFLOAT(Edit5.Text);
c:= STRTOFLOAT(Edit6.Text);
d:= STRTOFLOAT(Edit7.Text);
rez := (a*b) c-d;
If rez<10 then begin label9.Caption :="Так мало... Вы как так умудрились?";end;
If rez>10 then begin label9.Caption :="Вы счастливчик !!! Это совсем немного";end;
If rez=0 then begin label9.Caption :="Поздравляю вы не должны ни копейки"; end;
If rez<0 then begin label9.Caption :="Вы жулик !!! это невозможно"; end;
If rez>500 then begin label9.Caption :="Хм... немало... но терпимо"; end;
If rez>1000 then begin label9.Caption :="Ого... многовато"; end;
If rez>5000 then begin label10.Caption :="Быстро выключайте все !!! Уже и так света понажгли !!!"; end;
If rez>10000 then begin label9.Caption :="Вам капец..."; end;
If rez>50000 then begin label9.Caption :="Сдается мне вы юморист..."; end;
If rez>1000000 then begin label9.Caption :="Хватит прикалываться !!!"; end;
//По сути так называемый «вывод» бланка представляет собой выведенную картинку таблицы (заранее заготовлена в Excel) где не указанны числа и слова с соответственных графах. На их местах стоят метки заголовки которых меняются на результаты расчетов. Изначально параметр Visible (видимость) этой картинки и Label - ов поставлен на False. А также размер программы подогнан так что пользователь не видит их, но по нажатию кнопки после выполнения расчетов размер программы меняется так, чтобы бланк и Label-ы были видны и их параметр visible меняется на false. Также параметр visible меняется у button 3 (бланк) и button 4 (скрыть) так что в результате кнопка БЛАНК исчезает и на ее месте появляется кнопка СКРЫТЬ//
//Присваивание// label11.Caption :=Edit3.Text;
label13.Caption :=Edit1.Text;
label14.Caption :=Edit2.Text;
label15.Caption :=FLOATTOSTRF(rez,FFFIXED,90,2);
label16.Caption :=Edit7.Text;
label17.Caption :=Edit6.Text;
label18.Caption :=Edit5.Text;
label19.Caption :=Edit4.Text;
//включение видимости изображения бланка и меток-надписей// image2.Visible:=true;
label19.Visible:=true;
label18.Visible:=true;
label17.Visible:=true;
label16.Visible:=true;
label15.Visible:=true;
label14.Visible:=true;
label13.Visible:=true;
label12.Visible:=true;
label11.Visible:=true;
//Изменение размера программы//
Form1.height:=593;
//Изменение видимости кнопок//
Button3.Visible:=false;
Button4.Visible:=true;
end;
//Описание процедуры НАЖАТЬ НОПКА 4 (СКРЫТЬ)//
//Меняет размер окна программы так чтобы изображение бланка не было видно и после убирает кнопку СКРЫТЬ а на ее место возвращате кнопку БЛАНК чтобы пользователь мог повторить действие // procedure TFORM1.Button4Click(Sender: TOBJECT);
begin
//Изменение размера//
Form1.height:=490;
//Настройка видимости кнопок//
Button4.Visible:=false;
Button3.Visible:=true;
end;
//Конец программы// end.
Вывод
Результатом выполнения курсовой работы является программа «Миниэлектрик V 1.0.exe», разработанная в среде Delphi 7.
Выполняя курсовую работу я научился пользоваться средой программирования Delphi 7, освоил работу с графическим интерфейсом и научился его создавать, нашел большие различия между средами Pascal и Delphi 7 и некоторые сходства, получил новые теоретические и практические знания по программированию в новой на тот момент (ни разу до этого момента не работал с delphi 7) для меня средой программирования которой теперь с удовольствием пользуюсь и для других целей.
Список литературы
1. Самоучитель по Delphi 7 для начинающих (Электронный .chm учебник).