czwartek, 21 kwietnia 2022

Trigonometrict function (C++ Builder)

 


void __fastcall TForm1::TrackBar1Change(TObject *Sender)

{

 int x;

 double y,y1;

 x=TrackBar1->Position;

 Label1->Caption=IntToStr(x);

 y=(1.00*x);

 y1=y*(M_PI/180.00);

 Label2->Caption="sin: "+FloatToStrF(sin(y),ffGeneral,2,2);

 Label3->Caption="cos: "+FloatToStrF(cos(y),ffGeneral,2,2);

 Label4->Caption="tg: "+FloatToStrF(sin(y)/cos(y),ffGeneral,2,2);

 Label5->Caption="ctg:"+FloatToStrF(1.00/(sin(y)/cos(y)),ffGeneral,2,2);

 Label6->Caption="sin: (rad)  "+FloatToStrF(sin(y1),ffGeneral,2,2);

 Label7->Caption="cos: (rad)  "+FloatToStrF(cos(y1),ffGeneral,2,2);

 Label8->Caption="tg:  (rad)  "+FloatToStrF(sin(y1)/cos(y1),ffGeneral,2,2);

 Label9->Caption="ctg: (rad)  "+FloatToStrF(1.00/(sin(y1)/cos(y1)),ffGeneral,2,2);



}

piątek, 1 kwietnia 2022

Writing a text file into Word (C++ Builder)

 void __fastcall TForm1::Button1Click(TObject *Sender)

{

 fstream file;

 char* path="C:\\Users\\user\\winInstal.txt";

 Variant wordExe, wordValues;


 file.open(path, ios::in );

 if( file.good() )

    {

        string text;

        wordExe=Variant::GetActiveObject("Word.Application");

        wordValues=wordExe.OlePropertyGet("Selection");


        while( !file.eof() )

        {


            getline( file,text );

            wordValues.OlePropertySet("Text",text.c_str());

            wordValues.OleProcedure("Select");

            wordValues=Unassigned;

            wordExe=Unassigned;



        }


        file.close();


     }


     else

    ShowMessage("You can't open file");

}

czwartek, 27 stycznia 2022

Special sum function (C++ Builder)

 





__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
 srand(time(NULL));
}
//---------------------------------------------------------------------------
int* __fastcall TForm1::rand_Tab2(int *tab, int size_Tab, int find_Sum)
{
int i,sum;
int *result_Tab=new int [size_Tab];
for(i=0;i<size_Tab;i++)
result_Tab[i]=tab[i];
sum=0;
do
{
i=0;
do

{
result_Tab[i]=rand()%20;
         sum+=result_Tab[i];
         ++i;
}while (i<size_Tab);
if(sum!=find_Sum)
sum=0;

}while(sum!=find_Sum);

return result_Tab;

}
void __fastcall TForm1::Sort(int *tab, int s)
{
int i,j,k;
for(i=1;i<s;i++)
{
j=i;
k=tab[j];
while((j>0) && (tab[j-1]>k))
{
tab[j]=tab[j-1];
j--;
}
tab[j]=k;
}
}
void __fastcall TForm1::Button2Click(TObject *Sender)
{
 Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 int i,j,k,SUM;
 k=20;
 SUM=StrToInt(Edit1->Text);
 int **TAB=new int*[k];
 for(i=0;i<k;i++)
  TAB[i]=new int[k];
 for(i=0;i<k;i++)
 {
  TAB[i]=rand_Tab2(TAB[i],k,SUM);
 }
 for(i=0;i<k;i++)
  Sort(TAB[i],k);
 for(i=0;i<k;i++)
 {
  for(j=0;j<k;j++)
  {
   StringGrid1->Cells[j][i]=IntToStr(TAB[i][j]);
  }
 }
 for(i=0;i<k;i++)
  delete [] TAB[i];
 delete [] TAB;

}

środa, 12 stycznia 2022

this - example component TListBox - C++ Builder

 







TForm1 *Form1;
int number=4;
TListBox *newList[4];
TColor colors[4]={clBlue,clYellow,clGreen,clRed};
TColor penCol[4]={clWhite,clBlack,clYellow,clBlue};
AnsiString mFont[4]={"Arial","Times","Alchemist","GE Glob"};
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
 srand(time(NULL));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
 int i,mLeft,mTop,mWidth,mHeight;
 mWidth=120;mHeight=240;
 mTop=Form1->Height/4;
 mWidth=Form1->Width/4;
 AnsiString a="ListBoxA";
 for(i=0;i<number;i++)
 {
  newList[i]=new TListBox(this);
  newList[i]->Name=a+IntToStr(i+1);
  newList[i]->Width=mWidth;
  newList[i]->Height=mHeight;
  newList[i]->Left=((i+1)*mWidth)-mWidth;
  newList[i]->Top=mTop;
  newList[i]->Brush->Color=colors[i];
  newList[i]->Font->Color=penCol[i];
  newList[i]->Font->Size=15;
  newList[i]->Font->Name=mFont[i];
  newList[i]->Parent=this;




 }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
 int i;
 for(i=0;i<number;i++)
 {
  delete newList[i];
 }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 int i,j;
  for(i=0;i<number*2;i++)
  {
   for(j=0;j<number;j++)
   {
     newList[j]->Items->Add(IntToStr(i+1)+") - Random(10) - "+IntToStr(1+rand()%10));
   }
  }

}




niedziela, 9 stycznia 2022

Simple chart (C++ Builder)

 



void __fastcall TForm1::Button1Click(TObject *Sender)

{

 int pwidth,pheight,centrx,centry,rvalue,svalue,i,j;

 pwidth=PaintBox1->Width;

 pheight=PaintBox1->Height;

 centrx=pwidth/2;

 centry=pheight/2;

 rvalue=15;

 svalue=10;

 PaintBox1->Canvas->Brush->Color=clYellow;

 PaintBox1->Canvas->FillRect(PaintBox1->Canvas->ClipRect) ;

 PaintBox1->Canvas->Pen->Color=clBlack;

 PaintBox1->Canvas->MoveTo(centrx,0);

 PaintBox1->Canvas->LineTo(centrx,pheight);

 PaintBox1->Canvas->MoveTo(0,centry);

 PaintBox1->Canvas->LineTo(pwidth,centry);

 PaintBox1->Canvas->Pen->Color=clBlue;

 for(i=centrx+rvalue;i<pwidth+rvalue;i+=rvalue)

 {

  PaintBox1->Canvas->MoveTo(i,centry-svalue);

  PaintBox1->Canvas->LineTo(i,centry+svalue);

 }

 j=1;

 for(i=centry-rvalue;i>0;i-=rvalue)

 {

  PaintBox1->Canvas->MoveTo(centrx-svalue,i);

  PaintBox1->Canvas->LineTo(centrx+svalue,i);

  PaintBox1->Canvas->TextOut(centrx+(2*svalue),i-(svalue-1),IntToStr(j));

  ++j;

 }

 PaintBox1->Canvas->Pen->Color=clRed;

 for(i=centrx-rvalue;i>0;i-=rvalue)

 {

  PaintBox1->Canvas->MoveTo(i,centry-svalue);

  PaintBox1->Canvas->LineTo(i,centry+svalue);

 }

 j=1;

 for(i=centry+rvalue;i<pheight+rvalue;i+=rvalue)

 {

  PaintBox1->Canvas->MoveTo(centrx-svalue,i);

  PaintBox1->Canvas->LineTo(centrx+svalue,i);

  PaintBox1->Canvas->TextOut(i-(svalue-5),centry-(2*svalue),IntToStr(j));

  ++j;

 }

 PaintBox1->Canvas->Pen->Color=clGreen;

 PaintBox1->Canvas->MoveTo(centrx,0);

 PaintBox1->Canvas->LineTo(centrx-svalue,rvalue*2);

 PaintBox1->Canvas->MoveTo(centrx,0);

 PaintBox1->Canvas->LineTo(centrx+svalue,rvalue*2);

 PaintBox1->Canvas->MoveTo(pwidth,centry);

 PaintBox1->Canvas->LineTo(pwidth-(rvalue*2),centry-svalue);

 PaintBox1->Canvas->MoveTo(pwidth,centry);

 PaintBox1->Canvas->LineTo(pwidth-(rvalue*2),centry+svalue);


 PaintBox1->Canvas->TextOut(centrx-(3*rvalue),centry+rvalue,"(0,0)");


 PaintBox1->Canvas->Pen->Color=clGreen;

 PaintBox1->Canvas->MoveTo(centrx,centry);

 PaintBox1->Canvas->LineTo(pwidth,0);

 PaintBox1->Canvas->TextOut(centrx+(centrx/2)+rvalue,centry-(centry/2),"y=x");



}

poniedziałek, 20 grudnia 2021

Mars oposition (example C++)

 #include <iostream>

#include <fstream>

#define mtime 7

using namespace std;


struct MARS

{

double angular_DIAM;

double distance_UA;

double distance_MLN;

string date;

};


int main(int argc, char **argv)

{

struct MARS *mars_OPOSITION=new struct MARS[mtime];

mars_OPOSITION[0].angular_DIAM=16.9;

mars_OPOSITION[0].distance_UA=0.550;

mars_OPOSITION[0].distance_MLN=82.3;

mars_OPOSITION[0].date="2022.12.08";

mars_OPOSITION[1].angular_DIAM=14.4;

mars_OPOSITION[1].distance_UA=0.643;

mars_OPOSITION[1].distance_MLN=96.2;

mars_OPOSITION[1].date="2025.01.16";

mars_OPOSITION[2].angular_DIAM=13.8;

mars_OPOSITION[2].distance_UA=0.678;

mars_OPOSITION[2].distance_MLN=101.4;

mars_OPOSITION[2].date="2027.02.19";

mars_OPOSITION[3].angular_DIAM=14.4;

mars_OPOSITION[3].distance_UA=0.649;

mars_OPOSITION[3].distance_MLN=97.1;

mars_OPOSITION[3].date="2029.03.25";

mars_OPOSITION[4].angular_DIAM=16.9;

mars_OPOSITION[4].distance_UA=0.559;

mars_OPOSITION[4].distance_MLN=83.6;

mars_OPOSITION[4].date="2031.05.04";

mars_OPOSITION[5].angular_DIAM=22.00;

mars_OPOSITION[5].distance_UA=0.427;

mars_OPOSITION[5].distance_MLN=63.9;

mars_OPOSITION[5].date="2033.06.27";

mars_OPOSITION[6].angular_DIAM=24.5;

mars_OPOSITION[6].distance_UA=0.382;

mars_OPOSITION[6].distance_MLN=57.1;

mars_OPOSITION[6].date="2035.09.15";

fstream m_FILE( "MARS.txt", ios::out );

if(m_FILE.good())

{

for(int i=0;i<mtime;i++)

{

m_FILE<<mars_OPOSITION[i].angular_DIAM<<" ";

m_FILE<<mars_OPOSITION[i].distance_UA<<" ";

m_FILE<<mars_OPOSITION[i].distance_MLN<<" ";

m_FILE<<mars_OPOSITION[i].date<<"\n";

m_FILE.flush();

}

m_FILE.close();

}

delete [] mars_OPOSITION;

return 0;

}


poniedziałek, 29 listopada 2021

Sleep() nad time() (C++)

 #include <iostream>

#include <fstream>

#include <string.h>

#include <time.h>

#include <unistd.h>

using namespace std;



class time_File

{

private:

char* nameF;

int timeS;

time_t now_T;

public:

time_File(char* fileName, int sleepTime)

{

nameF=fileName;

timeS=sleepTime;

}

void Save()

{

int i;

fstream file(nameF,ios::out);

if (file.good())

{

for(i=0;i<timeS;i++)

{

now_T=time(NULL);

char *temp_File=asctime(localtime(&now_T));

file<<temp_File;

file.flush();

sleep(1);

}

file.close();

}

}

};


int main(int argc, char **argv)

{

time_File Timer("date.txt",7);

Timer.Save();

return 0;

}

Result: date.txt


Tue Nov 30 08:32:10 2021
Tue Nov 30 08:32:11 2021
Tue Nov 30 08:32:12 2021
Tue Nov 30 08:32:13 2021
Tue Nov 30 08:32:14 2021
Tue Nov 30 08:32:15 2021
Tue Nov 30 08:32:16 2021