R. A. Yusupov C++ Builderda masalalar va topshiriqlar samarqand 2018 yil



Download 3,49 Mb.
bet89/147
Sana03.01.2022
Hajmi3,49 Mb.
#314841
1   ...   85   86   87   88   89   90   91   92   ...   147
Bog'liq
c asosiy

void __fastcall TForm1::Move(int cx, int cy){

if((abs(cx-ex)==1 && cy-ey==0)||(abs(cy-ey)==1 &&

cx-ex==0))

{

// (сх,су) dan (ех,еу) ga soqqani ko’chirish



pole[ey][ex] = pole[cy][cx];

pole[cy][cx] = 16;

ex = cx;

ey = cy;


// maydonni qayta chizish

ShowPole();



if (Finish())

{

GameOver = true;



ShowPole();

int r=MessageDlg("Maqsadga erishildi! Yanami "

"(boshqa rasm)?", mtInformation, TMsgDlgButtons()<<

mbYes <
if (r==mrNo)

Form2->Close(); // dastur ishini tugatdi



else

{

NewGame();



ShowPole();

}

}



}

}

// kataklar (rasm qismlari) kerakli tartibda to’g’ri



// joylashganligini tekshirish

bool Finish()

{

bool result;



int row, col;

int k = 1;

result = true; // faraz qilamiz soqqa to’g’ri tartibda



for (row = 0; row < H; row++)

{

for (col = 0; col < W; col++)



if ( pole[row][col] == k )

k++;


else {

result = false;

break;

}

if(!result ) break;

}

return (result);

}

// Paint xodisani qayta ishlash



void __fastcall TForm1::FormPaint(TObject *Sender)

{

ShowPole();



}

// menyu satridan Yangi o’yin bo’yrug’ini tanlash



void __fastcall TForm1::Yangioyin1Click(TObject *Sender)

{

NewGame ();



}

void __fastcall TForm1::Dasturxaqida1Click(TObject *Sender)

{

WinExec("hh.exe -mapid 3 puzzle.chm", SW_RESTORE);



}

//Ma’lumotnoma menyusidan Ma’lumotnoma bo’yrug’ini

// tanlash

void __fastcall TForm1::Malumotnoma2Click(TObject *Sender)

{

WinExec("hh.exe puz zle.chm", SW_RESTORE);



}

// Parametrlar/Soqqa nomeri bo’yrug’i



void __fastcall TForm1::Fishkalarnomeri1Click(TObject *Sender)

{

Fishkalarnomeri1->Checked= !Fishkalarnomeri1->Checked;



ShowPole() ;

}

Juft rasmlar” o’yini



Juft rasmlar o’yini e’tiborni tortadi. Mana uning qoidasi. O’yin maydoni kataklarga ajratiladi, ularning xar birida rasmlar berkitilgan bo’ladi. Rasmlar juft, ya’ni o’yin maydonida shunday ikkita katak borki, ularda bir xil rasmlar joylashgan. o’yin boshida barcha kataklar “yopiq” dir. Sichqonchaning chap tugmasini bir marta bosishda katak “ochiladi”, katakda rasm xosil bo’ladi. Endi esa ochilgan katakdagi rasm joylashgan, keyingi katakni topish kerak. Agar ochilgan kataklarda rasmlar bir xil bo’lsa, u holda bu kataklar “yuqotiladi”. Agar xar xil bo’lsa – unda kataklar ochiq holda qoladi. Sichqonchani keyingi bosishda ochiq kataklar yopiladi va keyingisi ochiladi. Shunga e’tibor beringki, ochilayotgan katakdagi rasm ochilgan ikkita katakdagi rasmlarga mos kelsa xam, ochilgan ikkita katak yopiladi. O’yinchi barcha juft rasmlarni “topib” ochgandan keyin o’yin tugaydi.


Bu katakga sichqoncha bosilganda ochiq kataklar yopiladi, xatto agar bu katakdagi rasm ochiq katakdagi rasmlardan biriga mos kelsa xam.

Bu kataklarda bir xil rasmlar bo’lgan. O’yinchi ularni “topdi”



Download 3,49 Mb.

Do'stlaringiz bilan baham:
1   ...   85   86   87   88   89   90   91   92   ...   147




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish