Skip to content

Instantly share code, notes, and snippets.

@sinannar
Created February 12, 2012 16:40
Show Gist options
  • Save sinannar/1809564 to your computer and use it in GitHub Desktop.
Save sinannar/1809564 to your computer and use it in GitHub Desktop.
bilgisayarın ürettiği sayıyı 4 sansta bulmaya calısma oyunu...
/*
* HW2_091044005_PART_2.c
*
* CREATED BY: Sinan Nar
* CEATION DATE :20/03/2011
*
* ACIKLAMA:
* dort tabaninda iki basamakli sayi ureten ve kullanicinin tahmin etmesini isteyen program
*
*
*/
#include<stdio.h>
#include<time.h>
#define FOUR 4
#define TEN 10
void menu(void);
int main(void)
{
int u1,
u2,
g1,
g2,
girilen;
int x=0,
y=0;
srand(time(NULL));
/*iki tane 4 tabaninda sayi uretiyoruz*/
u1=rand()%FOUR;
u2=rand()%FOUR;
menu();
/*sayilarin esit olarak uretilme durumuna gore bir kod dizisi yaziyoruz bir kac kere daha deneyip olmaz ise programi sonlandiracak..*/
if(u1==u2)
{
u1=rand()%FOUR;
u2=rand()%FOUR;
}
else if(u1==u2)
{
u1=rand()%FOUR;
u2=rand()%FOUR;
}
else if(u1==u2)
{
printf("PROGRAM BIR HATADAN DOLAYI SAYI URETEMEMEKTE\nBUNDAN DOLAYI SONLANDIRILACAKTIR");
return 0;
}
/*birinci tur icin*/
printf("lutfen 4 tabaninda iki basamakli rakamlari farkli bir sayi giriniz \n");
scanf("%d",&girilen);
g1=girilen/TEN;
g2=girilen%TEN;
if(g1<0 || g1>3 || g2<0 || g2>3) //girilen rakamlarin 4 tabaninda oldugunu kontrol etmek icin bir if structure kullaniyoruz
{
printf("lutfen girdiginiz sayilarin dort tabaninda oldugundan emin olunuz\n");
scanf("%d",&girilen);
g1=girilen/TEN;
g2=girilen%TEN;
}
if(g1==g2) //rakamlari farkli girildigini kontrol etmek icin bir if structure kullaniyoruz
{
printf("lutfen tekrar 4 tabaninda iki basamakli rakamlari farli bir sayi giriniz \n");
scanf("%d",&girilen);
g1=girilen/TEN;
g2=girilen%TEN;
}
/*ilk tur*/
if(u1==g1 && u2==g2){//ilk denemede bilme veya bilememe olayi,eger sayilar esitse
printf("ilk denemede bildiniz\n");//bildiniz
return 0;}
else{/*sayilar esit degilse x veya y degerleri hesaplanacak*/
if(u1==g1)
{x++;}
if(u2==g2)
{x++;}
if(u2==g1)
{y++;}
if(u1==g2)
{y++;}
/*ikinci tur*/
printf("x=%d ve y=%d\nbi daha denemek icin tekrar sayi giriniz\n",x,y);
scanf("%d",&girilen);
g1=girilen/TEN;
g2=girilen%TEN;
if(u1==g1 && u2==g2){
printf("ikinci denemede bildiniz\n");
return 0;}
else{
x=0;
y=0;
if(u1==g1)
{x++;}
if(u2==g2)
{x++;}
if(u2==g1)
{y++;}
if(u1==g2)
{y++;}
/*ucuncu tur*/
printf("x=%d ve y=%d\nbi daha denemek icin tekrar sayi giriniz\n",x,y);
scanf("%d",&girilen);
g1=girilen/TEN;
g2=girilen%TEN;
if(u1==g1 && u2==g2){
printf("ucuncu denemede bildiniz\n");
return 0;}
else{
x=0;
y=0;
if(u1==g1)
{x++;}
if(u2==g2)
{x++;}
if(u2==g1)
{y++;}
if(u1==g2)
{y++;}
/*dorduncu tur*/
printf("x=%d ve y=%d\nbi daha denemek icin tekrar sayi giriniz\n",x,y);
scanf("%d",&girilen);
g1=girilen/TEN;
g2=girilen%TEN;
if(u1==g1 && u2==g2)
{printf("son denemede denemede bildiniz\n");
return 0;}
else{
printf("SON SANSINIZI DA KAYBETTINIZ BULMANIZ GEREKEN SAYI %d%d YDI\n\n\n",u1,u2);
}
}
}
}
}
/*PROGRAMIN ACIKLAMASINI BIR FOKNSIYON ILE SUNUYORUZ KULLANICIYA*/
void menu(void)
{
printf("\n\n\t\t\tSAYI BULMA OYUNU\n");
printf("\nBU PROGRAM,URETILEN BIR IKI BASAMAKLI DORT TABANINDAKI SAYIYI\n");
printf("\n\t\tTAHMIN ETMENIZ VE EGER TAHMINE DEMEDIGINIZ DURUMLARDA\n");
printf("\n\tSIZE TAHMIN ETMEK ICIN DORT HAK DAHA VERMEK UZERE\n");
printf("\nTASARLANMISTIR.LUTFEN RAKAMLARI FARKLI SAYILAR GIRINIZ HER SEFERINDE\n");
printf("\nNOT:ILK SEFER ICIN GIRDIGINIZ RAKAMLAR KONTROL EDILECEKTIR\n");
printf("\nDIGER DURUMLARDA X VE Y DeGERLERINDEN CIKARIM YAPAMAYACAKSINIZ\n\n\n");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment