Меню сайта
Категории раздела
Простые примеры [34] |
OpenGL [4] |
Фрактал [9] |
Windows API [2] |
Консоль [12] |
ДРУЗЬЯ САЙТА
Вызвать мастера в Красноярске
8 983 207 5474
8 902 918 9334
8 933 332 3164
---------------------------------
Запчасти бытткхники
Радиодетали
Электрика
ЗАКЛАДКИ
Поиск
Статистика
Онлайн всего: 2
Гостей: 2
Пользователей: 0
Главная » Статьи » C++ Builder » Простые примеры |
C++ BUILDER XE2 РАДИОЛЮБИТЕЛЬСКИЙ КАЛЬКУЛЯТОР
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1;//объявлен глобальный указатель Form1 класса TForm1 float Rez,Lx,Cx,Fx; //глобальные переменные //----------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- /* Функция принимает два параметра и возвращает значение */ float __fastcall RCom( float cx, float fx ) { return 1/(2 * 3.14159 * cx * fx ) ; } //-------------------------------------------------------- /* Функция принимает два параметра и возвращает результат через глобальную переменнуя "Rez" */ void __fastcall RLom( float lx, float fx ) { Rez = 2 * 3.14159 * lx * fx ; } //----------------------------------------------------------------------------- /* Функция ничего не принемает в качестве параметров и не возвращает используются глобальные переменные для передачи данных и возврата результата */ void __fastcall Fmgz( void ) { Rez = 159/sqrt( Lx * Cx ) ; } //----------------------------------------------------------------------------- /* Функция принимает и возвращает значения а также используется глобальная переменная */ float __fastcall Lmlgn( float cx ) { return 25300/(cx * pow( Fx , 2 ) ) ; } //----------------------------------------------------------------------------- /* В функции используется указатель на объект класса TLabel */ void __fastcall Cpf( float lx, TLabel* lb ) { lb->Caption = FloatToStr( 25300 /( lx * pow( Fx , 2 ) ) ) ; } //--------------------------------------------------------------------------- /* Функция принимает три параметра один изних строка типа UnicodeString результат работы функции присваивается свойству Caption компанента Label30 доступ к компаненту Label30 мы получяем через глобальный указатель Form1 */ void __fastcall Lraz( UnicodeString s, float l, float n ) { float d; d = StrToFloat(s) * 0.1; // переводим в милиметры //неявное приведение типа float к типу UnicodeString свойства Caption Form1->Label30->Caption = ( pow(d,2)*pow(n,2) ) / ( 45*d+100*l ) ; } //-----------ОТМЕНА КОНТЕКСТНОГО МЕНЮ---------------------------------------------------------------- void __fastcall TForm1::Edit1ContextPopup(TObject *Sender, TPoint &MousePos, bool &Handled) { Handled=true; } //-----------ПРОВЕРКА ВВОДИМЫХ СИМВОЛОВ---------------------------------------------------------------- void __fastcall TForm1::Edit1KeyPress(TObject *Sender, System::WideChar &Key) { if( Key == ',' && Edit1->Text.Pos(",") > 0 ) { Key=0; return; } if(Key >= '0' && Key <= '9' || Key == VK_BACK || Key == ',') return; Key=0; } //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// //-------------реактив с-------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { if( Edit1->Text != "" && Edit2->Text != "" ){ float cx,fx; fx = StrToFloat( Edit2->Text ) * 1; // оставляем в герцах cx = StrToFloat( Edit1->Text ) * 0.000001; //переводим в микрофарады Label2->Caption = FloatToStr( RCom( cx , fx ) ); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Edit1->Text=""; Edit2->Text=""; Label2->Caption=""; } //----------реактив l----------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { if( Edit3->Text != "" && Edit4->Text != "" ){ float lx,fx; fx = StrToFloat( Edit4->Text ) * 1; lx = StrToFloat( Edit3->Text )* 0.000001; RLom( lx , fx ); Label10->Caption = FloatToStr( Rez ); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { Edit3->Text=""; Edit4->Text=""; Label10->Caption=""; } //-------частота LC-------------------------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) { if( Edit5->Text != "" && Edit6->Text != "" ){ Lx = StrToFloat( Edit5->Text ) ; Cx = StrToFloat( Edit6->Text ) ; Fmgz(); Label15->Caption=FloatToStr(Rez); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button6Click(TObject *Sender) { Edit5->Text=""; Edit6->Text=""; Label15->Caption=""; } //------------индуктивность в контура---------------------------------------------------------------- void __fastcall TForm1::Button7Click(TObject *Sender) { if( Edit7->Text != "" && Edit8->Text != "" ){ float cx ; Fx = StrToFloat( Edit8->Text ) ; cx = StrToFloat( Edit7->Text ) ; Label20->Caption = FloatToStr( Lmlgn( cx ) ); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button8Click(TObject *Sender) { Edit7->Text=""; Edit8->Text=""; Label20->Caption=""; } //-----------емкость контура---------------------------------------------------------------- void __fastcall TForm1::Button9Click(TObject *Sender) { if( Edit9->Text != "" && Edit10->Text != "" ){ float lx ; Fx = StrToFloat( Edit10->Text ) ; lx = StrToFloat( Edit9->Text ) ; Cpf( lx , Label25 ) ; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button10Click(TObject *Sender) { Edit9->Text=""; Edit10->Text=""; Label25->Caption=""; } //--------------инуктив однослой------------------------------------------------------------- void __fastcall TForm1::Button11Click(TObject *Sender) { if( Edit11->Text != "" && Edit12->Text != "" && Edit13->Text != ""){ float l,n ; l = StrToFloat( Edit12->Text ) * 0.1; // переводим в милиметры n = StrToFloat( Edit13->Text ) * 1; Lraz( Edit11->Text, l, n) ; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button12Click(TObject *Sender) { Edit11->Text=""; Edit12->Text=""; Edit13->Text=""; Label30->Caption=""; } //------Реализация функции NLcat(float d, float l, float m) объявленной в классе TForm1--------------------------------------------------------------------- float __fastcall TForm1::NLcat(float d, float l, float m) { return (sqrt( 5*m*(9*d+20*l) ) )/d; } //----------Числовитков однослойной катушки------------------------------------------------------------------ void __fastcall TForm1::Button13Click(TObject *Sender) { if( Edit14->Text != "" && Edit15->Text != "" && Edit16->Text != ""){ float l,d,m ; d = StrToFloat(Edit14->Text) * 0.1; // переводим в милиметры l = StrToFloat(Edit15->Text) * 0.1; m = StrToFloat(Edit16->Text) * 1; Label37->Caption = NLcat( d, l, m ); } } //----------Числовитков однослойной катушки ----------------------------------------------------------------- void __fastcall TForm1::Button15Click(TObject *Sender) { if( Edit19->Text != "" && Edit20->Text != "" ){ float cx,m,l,d,n ; Fx = StrToFloat(Edit19->Text) ;//Частота контура cx = StrToFloat(Edit20->Text) ;//Ёмкость контура m = Lmlgn( cx ); //вычисляем индуктивность контура d = StrToFloat(Edit17->Text) * 0.1; // переводим в миллиметры диаметр l = StrToFloat(Edit18->Text) * 0.1; // переводим в милиметры длина намотки n = NLcat( d, l, m ); //Вычисляем число витков Label43->Caption = n; Label46->Caption = l/n*10; //Вычисляем диаметр провода } } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include <System.Classes.hpp> #include <Vcl.Controls.hpp> #include <Vcl.StdCtrls.hpp> #include <Vcl.Forms.hpp> #include <Vcl.ComCtrls.hpp> #include <math.h> //--------------------------------------------------------------------------- //float __fastcall muf(float a,float b, int c); class TForm1 : public TForm { __published: // IDE-managed Components TLabel *Label1; TEdit *Edit1; TEdit *Edit2; TButton *Button1; TLabel *Label2; TLabel *Label3; TLabel *Label4; TLabel *Label5; TButton *Button2; TPageControl *PageControl1; TTabSheet *TabSheet1; TTabSheet *TabSheet2; TTabSheet *TabSheet3; TEdit *Edit3; TLabel *Label6; TLabel *Label7; TLabel *Label8; TEdit *Edit4; TLabel *Label9; TLabel *Label10; TButton *Button3; TButton *Button4; TLabel *Label11; TLabel *Label12; TEdit *Edit5; TLabel *Label13; TEdit *Edit6; TLabel *Label14; TLabel *Label15; TButton *Button5; TButton *Button6; TTabSheet *TabSheet4; TLabel *Label16; TLabel *Label17; TEdit *Edit7; TLabel *Label18; TEdit *Edit8; TLabel *Label19; TLabel *Label20; TButton *Button7; TButton *Button8; TTabSheet *TabSheet5; TLabel *Label21; TLabel *Label22; TLabel *Label23; TEdit *Edit9; TEdit *Edit10; TLabel *Label24; TLabel *Label25; TButton *Button9; TButton *Button10; TTabSheet *TabSheet6; TEdit *Edit11; TEdit *Edit12; TEdit *Edit13; TLabel *Label26; TLabel *Label27; TLabel *Label28; TButton *Button11; TButton *Button12; TLabel *Label29; TLabel *Label30; TLabel *Label31; TTabSheet *TabSheet7; TLabel *Label32; TLabel *Label33; TEdit *Edit14; TLabel *Label34; TEdit *Edit15; TLabel *Label35; TEdit *Edit16; TLabel *Label36; TLabel *Label37; TButton *Button13; TButton *Button14; TLabel *Label38; TLabel *Label39; TEdit *Edit17; TLabel *Label40; TEdit *Edit18; TLabel *Label41; TEdit *Edit19; TLabel *Label42; TLabel *Label43; TEdit *Edit20; TLabel *Label44; TButton *Button15; TButton *Button16; TLabel *Label45; TLabel *Label46; TTabSheet *TabSheet8; void __fastcall Button1Click(TObject *Sender); void __fastcall Edit1ContextPopup(TObject *Sender, TPoint &MousePos, bool &Handled); void __fastcall Edit1KeyPress(TObject *Sender, System::WideChar &Key); void __fastcall Button2Click(TObject *Sender); void __fastcall Button3Click(TObject *Sender); void __fastcall Button4Click(TObject *Sender); void __fastcall Button5Click(TObject *Sender); void __fastcall Button6Click(TObject *Sender); void __fastcall Button7Click(TObject *Sender); void __fastcall Button9Click(TObject *Sender); void __fastcall Button11Click(TObject *Sender); void __fastcall Button10Click(TObject *Sender); void __fastcall Button12Click(TObject *Sender); void __fastcall Button8Click(TObject *Sender); void __fastcall Button13Click(TObject *Sender); void __fastcall Button15Click(TObject *Sender); private: // User declarations public: // User declarations //НАША ФУНКЦИЯ ОБЪЯВЛЕННАЯ В КЛАССЕ TForm1 float __fastcall NLcat(float d, float l, float m); __fastcall TForm1(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TForm1 *Form1; //--------------------------------------------------------------------------- #endif | |
Просмотров: 2234 | Рейтинг: 0.0/0 |