Texnologiyalari va kommunikatsiyalarni rivojlantirish vazirligi toshkent axborot texnologiyalari universiteti




Download 5,48 Mb.
Pdf ko'rish
bet52/53
Sana21.11.2023
Hajmi5,48 Mb.
#102807
1   ...   45   46   47   48   49   50   51   52   53
Bog'liq
Texnologiyalari va kommunikatsiyalarni rivojlantirish vazirligi

Tajriba ishi №19 
Mavzu: Individual erkin dastur loyihalash. 
Ishni bajarishdan maqsad: Calendar dasturini Visual Studio dasturida yaratish. 
Nazariy qism: 
Calendar dasturi – hohlagan sanani kiritgan vaqtda bizga shu sananing haftaning 
qaysi kuniga to’g’ri kelishini ko’rsatuvchi dastur hisoblanadi. Bu dastur yordamida 
boshqa calendar dasturlaridan farqli faqat hafta kuni ko’rsatiladi. Afzallik tomoni bu 
dastur yordamida C ++ dasturlash tilida int tipi qabul qila oladigana barcha yillar 
uchun hafta kunlarini aniqlashimiz mumkin. 
Buni quyidagiga dasturda ko’rib chiqamiz: 
Calendar dasturi faqat asosiy oynadan tashkil topgan bo’lib, hamma amallar shu 
oynada bajariladi. Bu oynaning ko’rinishi quyidagicha: 
Bunda sana kun, oy va yilni kiritish uchun comboBox komponentasidan 
foydalanamiz. Sanani yil, oy va kunni kiritigandan so’ng Xisoblash tugmachasi 
bosiladi bunda quyi textBox komponentasida bizga natija ko’rsatiladi. 


119 
Natija : 
Agar sana xato kiritilsa bunda bizga sana xato kiritilganligi to’g’risida xabar 
beriladi: 
Dastur kodi quyidagicha: 
#pragma endregion 
private: System::Void button1_Click(System::Object^ sender, 
System::EventArgs^ e) { 


120 
ok = 1; 
kun = System::Convert::ToInt64(comboBox1->Text); 
yil = System::Convert::ToInt64(comboBox3->Text); 
if(comboBox2->Text == "Yanvar") 
oy = 1; 
else if(comboBox2->Text == "Fevral") 
oy = 2; 
else if(comboBox2->Text == "Mart") 
oy = 3; 
else if(comboBox2->Text == "Aprel") 
oy = 4; 
else if(comboBox2->Text == "May") 
oy = 5; 
else if(comboBox2->Text == "Iyun") 
oy = 6; 
else if(comboBox2->Text == "Iyul") 
oy = 7; 
else if(comboBox2->Text == "Avgust") 
oy = 8; 
else if(comboBox2->Text == "Sentabr") 
oy = 9; 
else if(comboBox2->Text == "Oktabr") 
oy = 10; 
else if(comboBox2->Text == "Noyabr") 
oy = 11; 
else if(comboBox2->Text == "Dekabr") 
oy = 12; 
else 
ok = 0; 
if(yil < 0 || kun <= 0 || kun > 31) 


121 
ok = 0; 
if(oy == 4 || oy == 6 || oy == 9 || oy == 11){ 
if(kun == 31) 
ok = 0; 

if(ok && oy == 2){ 
if(yil % 4 != 0){ 
if(kun > 28) 
ok = 0; 

else{ 
if(yil % 100 == 0){ 
if(yil % 400 == 0){ 
if(kun > 29) 
ok = 0; 

else{ 
if(kun > 28) 
ok = 0; 


else{ 
if(kun > 29) 
ok = 0; 



for(int i = 1; i < oy; i ++) 
if(i == 1 || i == 3 || i == 5 || i == 7 || i == 8 || i == 10 || i == 12) 
kun += 31; 
else if(i == 2) 


122 
if(yil % 4 == 0) 
if(yil % 100 == 0 && yil % 400 != 0) 
kun += 28; 
else 
kun += 29; 
else 
kun += 28; 
else 
kun += 30; 
__int64 s = ((yil - 1) * 365 + (yil - 1) / 4 + kun - (yil - 1) / 100 + (yil - 1) / 400) % 7; 
if(ok) 
switch(s) { 
case 0 : textBox1 ->Text = "Yakshanba"; break; 
case 1 : textBox1 ->Text = "Dushanba"; break; 
case 2 : textBox1 ->Text = "Seshanba"; break; 
case 3 : textBox1 ->Text = "Chorshanba"; break; 
case 4 : textBox1 ->Text = "Payshanba"; break; 
case 5 : textBox1 ->Text = "Juma"; break; 
case 6 : textBox1 ->Text = "Shanba"; break; 

else 
textBox1->Text = "Bunday sana mavjud emas !"; 

}; 



123 

Download 5,48 Mb.
1   ...   45   46   47   48   49   50   51   52   53




Download 5,48 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



Texnologiyalari va kommunikatsiyalarni rivojlantirish vazirligi toshkent axborot texnologiyalari universiteti

Download 5,48 Mb.
Pdf ko'rish