1 Temmuz 2014 Salı

C Konsol da 52 Kartı Rastgele Dağıtarak Karıştırılmış Deste Oluşturma

KONU : C Konsol Uygulamalar - 52 kartı rastgele dağıtma . C konsolda rand fonksiyonunu kullanarak rastgele sayılar üretme. Rastgele sayılar üreterek dizi oluşturma.
ETİKETLER: c konsol - c rastgele sayı - c for döngüsü - c if else - c diziler



#include < stdio.h >
#include < stdlib.h >
#include < string.h >
#include < conio.h >
#include < time.h >

int main()
{
 srand(time(0)); //bu her zaman olacak.

 bool  kartdurum [52];
 int karistirilmisDeste [52];

 int rastgele = rand()%52;
 

 for(int i =0 ; i < 52; i++ )
 {
        kartdurum[i] = false ;
 }

 for(int i =0 ; i < 52; i++ )
 {

  //uretilen kart indexde varsa (true) ise bir oyuncu aynı karti bir daha alamayacagi icin tekrar kart gonderilmesi lazım.
  rastgele = rand()%52;
  if (kartdurum[rastgele] == true)
  {
   //aynı kart geldigi surece tekrar bir random kart uretip tekrar yolluyoruz farklı kart gelene kadar.
   while (true)
   {

       rastgele = rand()%52;
    if (kartdurum[rastgele] == false)
     break;
   }
  }

  //ardindan gelen karti tekrar olup olmadigina bakmasi icin tekrar true yaptık(varsayilan deger olarak)
  kartdurum[rastgele] = true;
  
  karistirilmisDeste[i] = rastgele;

 }

 for(int i =0 ; i < 52; i++ )
 {
  printf("%d ",karistirilmisDeste[i]);
 }
 getch();
}


Etiketler

Array (9) bool (3) break (1) BubbleSort (1) C (23) char (4) Char Sınıfı (1) conio.h (5) Console (4) Dizi (1) Diziler (11) Döngüler (24) File Sınıfı (1) Fonksiyon (3) For (12) Function (2) Game (1) Getch (1) gets (1) if-else (6) if-else örnekleri (15) int (8) Konsol (16) Konsol Okuma (16) Konsol Yazdırma (17) Matematik (14) Oyun (1) Pointer (2) printf (9) scanf (8) Sort (1) stdio.h (10) stdlib.h (8) strcpy (1) String (1) string.h (2) Swap (1) Switch Case (3) time.h (1) while (5)