Автор работы: Пользователь скрыл имя, 06 Декабря 2011 в 21:59, курсовая работа
Программа: «Графики»
Программное обеспечение, необходимое для функционирования программы:
1) Операционная среда Windows 95/98/Me/2k/XP/Vista/7
Среда разработки:
Borland C++ Builder 6.
Программа написана на языке VBA
Задание кафедры 2
Содержание 3
1. Описание программы 4
1.1 Общие сведения 4
1.2 Функциональное назначение 4
1.3 Логическая структура 4
1.4 Используемые технические средства 4
1.5 Вызов и загрузка 4
1.6 Данные 4
2. Описание применения 5
2.1 Назначение программы 5
2.2 Условия применения 5
2.3 Описание задачи 5
3. Руководство программиста 5
3.1 Общие сведения 5
3.2 Характеристики программы 5
4. Контрольный пример 5
5. Литература 10
Приложение 1. Текст программы 11
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
ЛИПЕЦКИЙ
ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
КАФЕДРА
АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ
Отчет о курсовой работе
«Реализация программного обеспечения для исследования графиков функций одной переменной»
по дисциплине
«Программирование»
Студент | ||||||||||||||
подпись, дата | фамилия, инициалы | |||||||||||||
Группа | ||||||||||||||
Принял | ||||||||||||||
ученая степень, звание | подпись, дата | фамилия, инициалы |
Липецк 20
Написать приложение, осуществляющее построение графиков функций нескольких типов: полиномы, степенные, тригонометрические.
1. Описание программы
Программа: «Графики»
Программное обеспечение,
необходимое для
1) Операционная среда Windows 95/98/Me/2k/XP/Vista/7
Среда разработки:
Borland C++ Builder 6.
Программа написана на языке VBA
Программа предназначена для построения графиков функций трёх видов, с возможностью изменять их аргументы.
Минимальные требования:
- Процессор Intel Pentium II.
- Наличие не менее 16Mб ОЗУ.
- Наличие не менее 1Мб свободного дискового пространства.
- SVGA – графический адаптер.
- Минимальный набор периферийного оборудования.
Для начала работы программы необходимо запустить файл «Graph.exe», далее нужно выбрать вкладку с названием требуемой функции, ввести аргументы и нажать кнопку «построить»
Входные данные:
2. Описание применения
Программа предназначена для построения графиков функций трёх типов.
Минимальные требования:
- Процессор Intel Pentium II.
- Наличие не менее 16Mб ОЗУ.
- Наличие не менее 1Мб свободного дискового пространства.
- SVGA – графический адаптер.
- Минимальный набор
периферийного оборудования.
Программное обеспечение,
необходимое для
- Операционная среда Windows 95/98/Me/2k/XP
- Программа MS Exel.
Задача:
Написать программу, осуществляющую построение графиков функций, с вводом их аргументов.
В программе использовались стандартные функции библиотеки «math.h», такие как pow, sin, cos, tan. Рисование графика осуществляется в канве объекта Image.
4. Контрольный пример
Рис.1. Рабочее окно программы.
Рис.2. График полинома.
Рис.3.График степенной
функции.
Рис.4.График тригонометрической функции.
Приложение 1. Текст
программы
#include <vcl.h>
#include <math.h>
#pragma hdrstop
#include "Unit1.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Image1->Canvas->MoveTo(Image1-
Image1->Canvas->LineTo(Image1-
Image1->Canvas->MoveTo(0,
Image1->Canvas->LineTo(Image1-
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int i,y,x;
int min=StrToInt(mine->Text);
int max =StrToInt(maxe->Text)
;
Image1->Canvas->MoveTo(Image1-
Image1->Canvas->LineTo(Image1-
Image1->Canvas->MoveTo(0,
Image1->Canvas->LineTo(Image1-
switch (PageControl1->TabIndex){
case 0:
y = (Image1->Height - (StrToFloat(p1->Text) + StrToFloat(p2->Text)*min+ StrToFloat(p3->Text)*min))- Image1->Height/2;
Image1->Canvas->MoveTo(Image1-
for (i=min;i<max;i++){
y = (Image1->Height - (StrToFloat(p1->Text) + StrToFloat(p2->Text)*i+ StrToFloat(p3->Text)*i)) - Image1->Height/2;
x = i+Image1->Width/2;
Image1->Canvas->LineTo(x,y);
Image1->Canvas->MoveTo(x,y);
} break;
case 1:
y = (Image1->Height - (StrToFloat(s1->Text)
* pow(min,StrToFloat(s2->Text)))
Image1->Canvas->MoveTo(Image1-
for (i=min;i<max;i++){
y = (Image1->Height - (StrToFloat(s1->Text)
*pow(i,StrToFloat(s2->Text))))
x = i+Image1->Width/2;
Image1->Canvas->LineTo(x,y);
Image1->Canvas->MoveTo(x,y);
} break;
case 2:
switch (ComboBox1->ItemIndex) {
case 0: y = (Image1->Height - (StrToFloat(t1->Text) * cos(StrToFloat(t2->Text)*i)))- Image1->Height/2;
Image1->Canvas->MoveTo(Image1-
for (i=min;i<max;i++){
y = (Image1->Height - (StrToFloat(t1->Text) * cos(StrToFloat(t2->Text)*i)))- Image1->Height/2;
x = i+Image1->Width/2;
Image1->Canvas->LineTo(x,y);
Image1->Canvas->MoveTo(x,y);
} break;
case 1: y = (Image1->Height - (StrToFloat(t1->Text) * sin(StrToFloat(t2->Text)*i)))- Image1->Height/2;
Image1->Canvas->MoveTo(Image1-
for (i=min;i<max;i++){
y = (Image1->Height - (StrToFloat(t1->Text) * cos(StrToFloat(t2->Text)*i)))- Image1->Height/2;
x = i+Image1->Width/2;
Image1->Canvas->LineTo(x,y);
Image1->Canvas->MoveTo(x,y);
} break;
case 2: y = (Image1->Height - (StrToFloat(t1->Text) * tan(StrToFloat(t2->Text)*i)))- Image1->Height/2;
Image1->Canvas->MoveTo(Image1-
for (i=min;i<max;i++){
y = (Image1->Height - (StrToFloat(t1->Text) * tan(StrToFloat(t2->Text)*i)))- Image1->Height/2;
x = i+Image1->Width/2;
Image1->Canvas->LineTo(x,y);
Image1->Canvas->MoveTo(x,y);
} break;
}
}
}