Реализация программного обеспечения для исследования графиков функций одной переменной
Автор работы: Пользователь скрыл имя, 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
Содержимое работы - 1 файл
курсач.doc
— 440.00 Кб (Скачать файл)МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
ЛИПЕЦКИЙ
ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
КАФЕДРА
АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ
Отчет о курсовой работе
«Реализация программного обеспечения для исследования графиков функций одной переменной»
по дисциплине
«Программирование»
| Студент | ||||||||||||||
| подпись, дата | фамилия, инициалы | |||||||||||||
| Группа | ||||||||||||||
| Принял | ||||||||||||||
| ученая степень, звание | подпись, дата | фамилия, инициалы | ||||||||||||
Липецк 20
Задание кафедры
Написать приложение, осуществляющее построение графиков функций нескольких типов: полиномы, степенные, тригонометрические.
Содержание
1. Описание программы
1.1 Общие сведения
Программа: «Графики»
Программное обеспечение,
необходимое для
1) Операционная среда Windows 95/98/Me/2k/XP/Vista/7
Среда разработки:
Borland C++ Builder 6.
Программа написана на языке VBA
1.2 Функциональное назначение
Программа предназначена для построения графиков функций трёх видов, с возможностью изменять их аргументы.
1.3 Логическая структура
1.4 Используемые технические средства
Минимальные требования:
- Процессор Intel Pentium II.
- Наличие не менее 16Mб ОЗУ.
- Наличие не менее 1Мб свободного дискового пространства.
- SVGA – графический адаптер.
- Минимальный набор периферийного оборудования.
1.5 Вызов и загрузка
Для начала работы программы необходимо запустить файл «Graph.exe», далее нужно выбрать вкладку с названием требуемой функции, ввести аргументы и нажать кнопку «построить»
1.6 Данные
Входные данные:
- Для полинома вида y = C + C1x + C2x вводятся С, С1, С2.
- Для степенной функции вида y = Cx^a вводятся С, a.
- Для тригонометрической функции вида С*funct(A*x) вводятся С, A.
2. Описание применения
2.1 Назначение программы
Программа предназначена для построения графиков функций трёх типов.
2.2 Условия применения
Минимальные требования:
- Процессор Intel Pentium II.
- Наличие не менее 16Mб ОЗУ.
- Наличие не менее 1Мб свободного дискового пространства.
- SVGA – графический адаптер.
- Минимальный набор
периферийного оборудования.
Программное обеспечение,
необходимое для
- Операционная среда Windows 95/98/Me/2k/XP
- Программа MS Exel.
2.3 Описание задачи
Задача:
Написать программу, осуществляющую построение графиков функций, с вводом их аргументов.
3. Руководство программиста
3.1 Общие сведения
В программе использовались стандартные функции библиотеки «math.h», такие как pow, sin, cos, tan. Рисование графика осуществляется в канве объекта Image.
3.2 Характеристики программы
- Для выполнения программы требуется сравнительно небольшой промежуток времени.
- В программе присутствует проверка на заполненность формы.
4. Контрольный пример
Рис.1. Рабочее окно программы.
Рис.2. График полинома.
Рис.3.График степенной
функции.
Рис.4.График тригонометрической функции.
5. Библиографический список
- А.Я.Архангельский. Программирование в C++ Builder 6, Бином, 2003
- Джаррод Холингворт, Боб Сворт, Марк Кэшмэн, Поль Густавсон Borland C++ Builder 6. Руководство разработчика. — М.:«Вильямс», 2004
- Джерод Холлингворс, Дэн Баттерфилд, Боб Свот C++ Builder 5. Руководство. — М.: «Диалектика», 2001
Приложение 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;
}
}
}