#include #include #include #include typedef struct kart{ int deger; int aile; }kart; int toplam(kart x[]); //eldeki toplam kağıt değerini bulur int main(){ kart deste[52]; for(int i = 0 ;i<52;i++){ deste[i].deger=i%13; deste[i].aile=i/13; printf("%d",i); } srand ( time(NULL) ); int sira= rand()%52; printf("sira %d",sira); kart rasgele = deste[sira]; printf("rasgele çekilen kart %d %d",rasgele.deger,rasgele.aile); kart o1[10],o2[10]; //oyuncu 1 ve 2 icin ellerindeki kartlari tutan dizi for(int i=0;i<10;i++){ o1[i].deger=0; o2[i].deger=0; } int o1num=0; int o2num=0; int o1durum=0,o2durum=0; // oyuncularin durumu 0 devam, 1 pas while(true){ if(o1durum==0&&toplam(o1)<21){ int sira= rand()%52; printf("çekilen kart%d\n",sira); kart rasgele = deste[sira]; o1[o1num++]=rasgele; } if(o1durum==0&&toplam(o2)<21){ int sira= rand()%52; printf("çekilen kart%d\n",sira); kart rasgele = deste[sira]; o2[o2num++]=rasgele; } if(o1durum==1&&o2durum==1 || toplam(o2) >= 21&&o1durum==1 || toplam(o1) >= 21&&o2durum==1 || toplam(o1) >= 21&&toplam(o2)>=21) break; printf("o1 elindeki kartlar:\n"); for(int j=0;jtoplam(o2)) printf("o1 kazandi"); if(toplam(o2)<21 && toplam(o2)>toplam(o1)) printf("o2 kazandi"); if(toplam(o2)>21&&toplam(o1)>21) printf("kimse kazanamadi"); if(toplam(o1)<=21&&toplam(o2)>21) printf("o1 kazandi"); if(toplam(o2)<=21&&toplam(o1)>21) printf("o1 kazandi"); getch(); return 0; } int toplam(kart x[]){ int toplam=0; for(int i=0;i<10;i++){ toplam += x[i].deger; } return toplam; }