sobota, 2 czerwca 2018
Calendar 2018 C++ Builder
private: // User declarations
int months[12];
UnicodeString days[7];
UnicodeString months_name[12];
bool __fastcall is_Monday(int value);
bool __fastcall is_Tuesday(int value);
bool __fastcall is_Wednesday(int value);
bool __fastcall is_Thursday(int value);
bool __fastcall is_Friday(int value);
bool __fastcall is_Saturday(int value);
bool __fastcall is_Sunday(int value);
UnicodeString __fastcall write_Day(int value);
UnicodeString __fastcall write_Month(int value);
int __fastcall write_Nr(int value);
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
months[0]=31;
months[1]=28;
months[2]=31;
months[3]=30;
months[4]=31;
months[5]=30;
months[6]=31;
months[7]=31;
months[8]=30;
months[9]=31;
months[10]=30;
months[11]=31;
days[0]="Monday";
days[1]="Tuesday";
days[2]="Wednesday";
days[3]="Thursday";
days[4]="Friday";
days[5]="Saturday";
days[6]="Sunday";
months_name[0]="January";
months_name[1]="Februar";
months_name[2]="March";
months_name[3]="April";
months_name[4]="May";
months_name[5]="June";
months_name[6]="July";
months_name[7]="August";
months_name[8]="September";
months_name[9]="October";
months_name[10]="November";
months_name[11]="December";
}
//---------------------------------------------------------------------------
bool __fastcall TForm1::is_Monday(int value)
{
int i;
bool temp;
temp=false;
for(i=1;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
bool __fastcall TForm1::is_Tuesday(int value)
{
int i;
bool temp;
temp=false;
for(i=2;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
bool __fastcall TForm1::is_Wednesday(int value)
{
int i;
bool temp;
temp=false;
for(i=3;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
bool __fastcall TForm1::is_Thursday(int value)
{
int i;
bool temp;
temp=false;
for(i=4;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
bool __fastcall TForm1::is_Friday(int value)
{
int i;
bool temp;
temp=false;
for(i=5;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
bool __fastcall TForm1::is_Saturday(int value)
{
int i;
bool temp;
temp=false;
for(i=6;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
bool __fastcall TForm1::is_Sunday(int value)
{
int i;
bool temp;
temp=false;
for(i=7;i<365+1;i+=7)
if(i==value)
temp=true;
return temp;
}
UnicodeString __fastcall TForm1::write_Day(int value)
{
UnicodeString value_d;
if(is_Monday(value))
value_d=days[0];
else if(is_Tuesday(value))
value_d=days[1];
else if(is_Wednesday(value))
value_d=days[2];
else if(is_Thursday(value))
value_d=days[3];
else if(is_Friday(value))
value_d=days[4];
else if(is_Saturday(value))
value_d=days[5];
else
value_d=days[6];
return value_d;
}
UnicodeString __fastcall TForm1::write_Month(int value)
{
UnicodeString value_m;
int temp_min[12],i,sum;
sum=0;
for(i=0;i<12;i++)
temp_min[i]=0;
for(i=0;i<12;i++)
{
sum+=months[i];
temp_min[i]+=sum;
}
if(value<=temp_min[0])
value_m=months_name[0];
if(value> temp_min[0] && value <=temp_min[1])
value_m=months_name[1];
if(value>temp_min[1] && value<=temp_min[2])
value_m=months_name[2];
if(value>temp_min[2] && value<=temp_min[3])
value_m=months_name[3];
if(value>temp_min[3] && value<=temp_min[4])
value_m=months_name[4];
if(value>temp_min[4] && value<=temp_min[5])
value_m=months_name[5];
if(value>temp_min[5] && value<=temp_min[6])
value_m=months_name[6];
if(value>temp_min[6] && value<=temp_min[7])
value_m=months_name[7];
if(value>temp_min[7] && value<=temp_min[8])
value_m=months_name[8];
if(value>temp_min[8] && value<=temp_min[9])
value_m=months_name[9];
if(value>temp_min[9] && value<=temp_min[10])
value_m=months_name[10];
if(value>temp_min[10] && value<=temp_min[11])
value_m=months_name[11];
return value_m;
}
int __fastcall TForm1::write_Nr(int value)
{
int value_nr;
int temp_min[12],i,sum;
sum=0;
for(i=0;i<12;i++)
temp_min[i]=0;
for(i=0;i<12;i++)
{
sum+=months[i];
temp_min[i]+=sum;
}
if(value<=temp_min[0])
value_nr=value;
if(value> temp_min[0] && value <=temp_min[1])
value_nr=value-temp_min[0];
if(value>temp_min[1] && value<=temp_min[2])
value_nr=value-temp_min[1];
if(value>temp_min[2] && value<=temp_min[3])
value_nr=value-temp_min[2];
if(value>temp_min[3] && value<=temp_min[4])
value_nr=value-temp_min[3];
if(value>temp_min[4] && value<=temp_min[5])
value_nr=value-temp_min[4];
if(value>temp_min[5] && value<=temp_min[6])
value_nr=value-temp_min[5];
if(value>temp_min[6] && value<=temp_min[7])
value_nr=value-temp_min[6];
if(value>temp_min[7] && value<=temp_min[8])
value_nr=value-temp_min[7];
if(value>temp_min[8] && value<=temp_min[9])
value_nr=value-temp_min[8];
if(value>temp_min[9] && value<=temp_min[10])
value_nr=value-temp_min[9];
if(value>temp_min[10] && value<=temp_min[11])
value_nr=value-temp_min[10];
return value_nr;
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int value,nr_day;
UnicodeString day,month;
value=StrToInt(Edit1->Text);
day=write_Day(value);
month=write_Month(value);
nr_day=write_Nr(value);
Label1->Caption=day;
Label2->Caption=month;
Label4->Caption=IntToStr(nr_day);
}
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz