Разработка прикладного алгоритма и его реализация на языке С++

Автор: Пользователь скрыл имя, 16 Января 2011 в 11:00, курсовая работа

Описание работы

Borland C++ Builder является средой быстрой разработки приложений. В основе систем быстрой разработки (RAD-систем, Rapid Application Development — среда быстрой paзpa6oтки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть работы по генерации кода программы, остав¬ляя программисту работу по конструированию диалоговых окон и написа¬нию функций обработки событий. Производительность программиста при использовании RAD систем существенно увеличивается.

Содержание

1. Среда программирования Borland C++ Builder……………………...3
2. Математическое обеспечение…………………………….…………...9
3. Разработка алгоритма программы в виде блок-схемы…….……….10
4. Описание работы программы………….…………………………….11
5. Выводы………………………………….…………………………….14
6. Список используемой литературы…….…………………………….15
7. Приложение…………………………………………………...………16

Работа содержит 1 файл

КУРСОВАЯ РАБОТА.doc

— 557.00 Кб (Скачать)

    11

    1. Компонент OpenDialog – осуществляет доступ к стандартному диалоговому окну «Открыть файл». Используется для открытия файла из которого загружаются данные.
    2. Компонент Button – кнопка. С помощью них осуществляются действия программы (выполняется загрузка файла, алгоритм)

    

 В данной программе  компонент Button1 представлен в обычной фореме, т.е. стандартная кнопка. Для нее задано событие Button1Click (нажатие кнопки 1) при котором появляется стандартное диалоговое окно «Открыть файл». После выбора файла, так же в этом событии происходит проверка правильности данных и дальнейшее выполнение алгоритма. После вывода конкретного  результата (или сообщения «Введенные данные не верны») можно использовать этот компонент снова.

 Так же, в  программе имеется компонент  Button2 представленный так де в обычной форме. И при заданном событии Button2Click выполняет действие Clouse (выход из программы).

 12

 
 

 Так же при  создании программы были изменены некоторые  свойства компонента TForm1 (Форма):

 В частности изменено свойство BorderIcons (кнопки управления окном) – компонент biMaximaze (развернуть) сделан недоступным.

 Был изменен  компонент BorderStyle (вид границы) – bsSizeable (обычная граница) была заменена на bsSingle (тонкая граница) для отключения функции свободной трансформации окна. 
 
 
 
 
 
 
 

13

   Выводы 

 В ходе выполнения работы был изучен алгоритм итерационного поиска, а так же основы программирования в среде Borland C++ Builder. Данный язык так же называют средой быстрой разработки приложений, что вполне оправдано – для создания аналогичной программы на ассемблере необходимо было бы написать код на сотню страниц, в С++ на десяток,  а на Borland C++ Builder всего несколько страниц. Borland C++ Builder является средой визуальной разработки приложений. Данный подход к программированию является одним из самых перспективных на сегодняшний день и это вполне оправданно как объемом кода для написания программы, так и следствием из этого – экономией времени. А всплывающие подсказки при написании кода, избавляют от необходимости обращаться к справочникам для уточнения синтаксиса конкретной команды. Однако, для написания любой программы необходимо знать и уметь составлять алгоритмы решения задачи, что входит исключительно в задачи программиста. В связи с этим, в ходе выполнения работы, были изучены основы программирования на языке С++ , который является базовым для Borland C++ Builder, без знания основ которого не может быть реализован ни один алгоритм. Так что для работы в среде Borland C++ Builder необходимо знание основ как С++, так и объектно-ориентированного программирования в целом. 
 
 
 
 
 
 

14

   Список  используемой литературы

    1. Культин Н.Б. Самоучитель С++ Builder. – СПб.: БХВ-Петербург,2005. – 320с.: ил.
    2. Культин Н.Б. С/С++ в задачах и примерах. – СПб.: БХВ-Петербург, 2006. – 288с.: ил.
    3. Borland Builder C++. Освой самостоятельно. – СПб.: Питер, 2005. – 702с.: ил.
    4. Холзнер С. Visual C++ 6. Учебный курс. – СПб.: Питер, 2006. – 570с.: ил.
    5. Красиков И.В., Красикова И.Е. Алгоритмы. Просто как дважды два. – М.: Эксмо,2006. – 256с.: ил.
    6. Карпов Б., Баранова Т. С++. Специальный справочник (2-е издание). – СПб.: Питер, 2005. – 381с.: ил.
    7. Франка П. С++: Учебный курс. – СПб.: Питер, 2005. – 522с.: ил.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

15

   Приложение

//--------------------------------------------------------------------------- 

#include <vcl.h>

   #include <math.h>

#pragma hdrstop 

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

        : TForm(Owner)

{

}

//--------------------------------------------------------------------------- 

void __fastcall TForm1::Button1Click(TObject *Sender)

{

long int a,b,c,x,p,po;

float o,y; 

if (OpenDialog1->Execute())

  {

   Memo1->Lines->LoadFromFile(OpenDialog1->FileName);

  Edit1->Text="Данные загружены";

 

16

a=StrToInt(Memo1->Lines->operator [](0));

  Label2->Caption=IntToStr(a);

  b=StrToInt(Memo1->Lines->operator [](1));

  Label4->Caption=IntToStr(b);

  c=StrToInt(Memo1->Lines->operator [](2));

  Label6->Caption=IntToStr(c);

  o=0;

  if ((StrToInt(Label4->Caption)>=1) && (StrToInt(Label4->Caption)<=5))

        {

       for (y=a*c/100;y<=a;y=y+0.001)

        {

        o=a;

        po=1;

      while (po<=b*12)

                {

                o=o+o*c/100;

                 o=o-y;

                 po=po+1;

                }

      if (o<-1) break;

        if ((o<1) && (o>=-1))

                {

        Label8->Caption=FloatToStrF(y,ffFixed,5,2);

        o=a;

        po=1;

        Image1->Canvas->MoveTo(15,200);

        Image1->Canvas->LineTo(15,5);

        Image1->Canvas->LineTo(10,10);

    

17

   Image1->Canvas->MoveTo(15,5);

        Image1->Canvas->LineTo(20,10);

        Image1->Canvas->MoveTo(0,114);

        Image1->Canvas->LineTo(500,114);

        //Image1->Canvas->MoveTo(0,0);

        Image1->Canvas->MoveTo(po*7+14,120-o/10);

      while (po<=b*12)

                { 

               Image1->Canvas->MoveTo(po*7+14,120-o/10);

                Image1->Canvas->LineTo(po*7+15,120-o/10);

             

                o=o+o*c/100;

                 o=o-y;

                 po=po+1;

                } 

                }

        } 

        }

       else

       {

       Edit1->Text="Загружаемые данные не  верны";

       }

  }

   
 

18

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

Form1->Close();      

}

//--------------------------------------------------------------------------- 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

19

Информация о работе Разработка прикладного алгоритма и его реализация на языке С++