vudik
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору я знаю что наглостю так и прет ну всетаки помогите пожалуйста... я над этой прогой ни одни сутки уже сижу а толку 0.0%... усилиями Meister Floh, я розобрался с построением графика одной функции а как сделать чтобы можна пользователю выбирать из нескольких и просто менять коэффициент, и выставлять границы не знаю, уже кучу всего перепробовал... одни ошибки вот то что работает Код: __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } void __fastcall TForm1::Grafik(void) { float x1, x2; float y1, y2; float x; float y; float dx; int l,b; int w, h; float mx, my; int x0, y0; l = 10; b = Form1->ClientHeight-20; h = Form1->ClientHeight-40; w = Form1->Width - 20; x1 = 0; x2 = 2; dx = 0.00001; x = x1; y1 = f(x); y2 = f(x); do { y = f(x); if ( y < y1 ) y1 = y; if ( y > y2 ) y2 = y; x += dx; } while (x <= x2); my = (float)h/abs(y2-y1); mx = w/abs(x2-x1); x0 = l+abs(x1*mx); y0 = b-abs(y1*my); Canvas->MoveTo(x0,b);Canvas->LineTo(x0,b-h); Canvas->MoveTo(l,y0);Canvas->LineTo(l+w,y0); Canvas->TextOutA(x0+5,b-h,FloatToStrF(y2,ffGeneral,6,3)); Canvas->TextOutA(x0+5,b,FloatToStrF(y1,ffGeneral,6,3)); x = x1; do { y = f(x); Canvas->Pixels[x0+x*mx][y0-y*my] = clRed; x += dx; } while (x <= x2); } float __fastcall TForm1::f( float x) { float a; int v=1; if(v==1)a=x*x; if(v==2)a=sin(x); return a; } //--------------------------------------------------------------------------- void __fastcall TForm1::FormPaint(TObject *Sender) { Grafik(); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormResize(TObject *Sender) { TRect rct = Rect(0,0,ClientWidth,ClientHeight); Canvas->FillRect(rct); Grafik(); } #ifndef Unit1222H #define Unit1222H //--------------------------------------------------------------------------- #include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp> //--------------------------------------------------------------------------- class TForm1 : public TForm { __published: // IDE-managed Components TEdit *Edit1; TButton *Button1; void __fastcall FormResize(TObject *Sender); void __fastcall FormPaint(TObject *Sender); void __fastcall Button1Click(TObject *Sender); private: // User declarations public: // User declarations __fastcall TForm1(TComponent* Owner); void __fastcall Grafik(void); float __fastcall f(float x); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif | пожалуйста очень нужно может у есть какие-нибудь полезные ссылки или название книг по этой теме помогите бедному студенту... зарание спасибо |