Автор: Пользователь скрыл имя, 26 Марта 2011 в 18:13, курсовая работа
Написать  программу, выполняющую следующие действия:
• Нахождение корней алгебраического уравнения методом Лобачевского - Греффе: для случая действительных корней;
• если таких корней нет, выдать на дисплей соответствующее сообщение.
1. Введение………………………………………………………………………….3
   2. Назначение и область применения……………………………………………..4
   3. Технические характеристики…………………………………………………...4
   4. Разработка программы…………………………………………………………..5
   5. Текст программы………………………………………………………………...9
   6. Описание программы…………………………………………………………..13
   7. Тестирование программы……………………………………………………...14
   8. Список литературы……………………………………………………………..16
Оглавление 
 
2. 
Назначение и область 
применения. 
Приложение разработано 
для учебных целей. 
3.Технические характеристики.
Написать программу, выполняющую следующие действия:
• Нахождение корней алгебраического уравнения методом Лобачевского - Греффе: для случая действительных корней;
• если 
таких корней нет, выдать на дисплей 
соответствующее сообщение. 
Описание 
алгоритма. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Организация 
входных и выходных 
данных. 
Выбор 
состава технических 
и программных средств. 
Программа разработана в програмной среде C++Builder 2009 .
Запуск программы возможен в среде ОС семейства Windows
 
4. 
Разработка программы. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Номер | 
  Компонент | 
  Название и назначение | 
  Событие | 
| 1 | TForm | Расчёт корней алгебраического уравнения по методу Лобачевского Основное окно программы | |
| 2 | TStringGrid | Таблица 
  ввода коэффициентов 
  уравнения
   ввод коэффициентов уравнения  | 
  StringGridSetEditText | 
| 3 | TButton | Кнопка 
  «Расчёт корней алгебраического 
  уравнения по методу 
  Лобачевского»
   Вычисление корней уравнения  | 
  Button2Click | 
| 4 | TEdit | Округлить 
  до
   Поле ввода округления результата  | 
  
  
  | 
| 5 | TEdit | Наибольшая 
  степень уравнения
   Определение количества полей ввода коэффициентов в TStringGrid  | 
  Edit2Change | 
| 6 | TMemo | Поле 
  вывода результатов
   Вывод корней уравнения  | 
  
 
 
Спецификация 
программы. 
Обозначение | 
  Наименование | 
  Примечание | 
| sdiapp.bdsproj | Файл опций проекта | Связывает все файлы приложения | 
| sdiapp.cbproj | Файл проекта | Реализация программы | 
| sdiapp.cbproj.local | Файл ресурсов | Двоичный файл | 
| sdiapp.cpp | Файл проекта | Объектный код проекта | 
| SDIAPP.ICO | Файл проекта | Файл иконки | 
| SDIMAIN.h | Файл модуля 1 проекта | Заголовочный файл | 
| SDIMAIN.CPP | Файл модуля 1 проекта | Реализация программы | 
| SDIMAIN.dfm | Файл формы модуля 1 проекта | Графическая часть модулей | 
| ABOUT.H | Файл модуля 2 проекта | Заголовочный файл | 
| ABOUT.DFM | Файл формы модуля 2 проекта | Объектный код модуля | 
| ABOUT.CPP | Файл модуля 2 проекта | По умолчанию | 
| sdiapp.exe | Исполняемый скомпилированый файл | Файл запуска приложения | 
| Function.h | Файл модуля проекта | Реализация программы | 
 
5. 
Текст программы. 
SDIMAIN.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop 
#include "SDIMain.h"
#include "About.h"
#include <math.h>
#include <math.hpp>
//#include <conio.h>
#define M 15
//double *A = new double;
//double *X = new double;
double A[M], X[M];
#include "Function.h"
int N = 0; //количество аргументов
double epsilon = 0; //приближение
int round = -15;
//----------------------------
#pragma resource "*.dfm"
TSDIAppForm *SDIAppForm;
//----------------------------
__fastcall TSDIAppForm::TSDIAppForm(
: TForm(AOwner)
{
}
//----------------------------
void __fastcall TSDIAppForm::FileNew1Execute(
{
// Do nothing
}
//----------------------------
void __fastcall TSDIAppForm::FileOpen1Execute(
{
OpenDialog->Execute();
}
//----------------------------
void __fastcall TSDIAppForm::FileSave1Execute(
{
SaveDialog->Execute();
}
//----------------------------
 
void __fastcall TSDIAppForm::FileExit1Execute(
{
Close();
}
//----------------------------
void __fastcall TSDIAppForm::
{
AboutBox->ShowModal();
}
//----------------------------
void __fastcall TSDIAppForm::Button1Click(
{
if (N !=0) { 
 int iter=1; 
      while 
(Lobochevsky_Root(N,iter,
iter++;
}
if (Сheck_Marks(N, epsilon, StringGrid1,Memo1)) Print_Result(N, round,Memo1);
  else { Memo1->Clear(); 
Memo1->Lines->Add("Корней нет"
}
}
//----------------------------
void __fastcall TSDIAppForm::Edit3Change(
{
try{
if (Edit3->Text != "") epsilon = StrToFloat(Edit3->Text);
else epsilon = 0;
}
catch (...){
ShowMessage("Не верный ввод");
epsilon = 0;
Edit3->SetFocus();
}
}
//----------------------------
void __fastcall TSDIAppForm::CheckBox1Click(
{
if (Edit4->Visible){
Edit4->Visible = false;
round = -15;
}
      else 
Edit4->Visible = true; 
}
//----------------------------
void __fastcall TSDIAppForm::Edit4Change(
{
try{
if (Edit4->Text != ""){
round = StrToFloat(Edit4->Text);
round = -round;
Print_Result(N, round,Memo1);
}
else round = 15;
}
catch (...){
ShowMessage("Не верный ввод");
round = 15;
Edit4->SetFocus();
}
}
//----------------------------
void __fastcall TSDIAppForm::CheckBox2Click(
{
if (Edit3->Visible) {
Edit3->Visible = false;
epsilon = 0;
}
else Edit3->Visible = true;
}
//----------------------------
Информация о работе Расчет корней уравнения по методу Лобачевского