C kitaplığı fonksiyonu int rand(void), 0 ila RAND_MAX aralığında bir rasgele sayı döndürür.
RAND_MAX, varsayılan değeri uygulamalar arasında değişebilen ancak en az 32767 olarak verilen bir sabittir.
Bilgisayar tarafından tutulan rastgele sayıyı tahmin eden C programı
Çözüm 1: 0-100 arasında rastgele sayı tahmin programı
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
#include <stdio.h> #include <stdlib.h> #include <time.h> int main(void) { int rsayi = 0; int tahmin = 0; int enbuyuk = 100; //100e kadar tahmin yapacak srand(time(NULL)); rsayi = rand() % enbuyuk + 1; printf("0-100 arasında sayı tahmin programı \n"); while(1) { printf("Tahmin Et! :"); scanf("%d", &tahmin); if (tahmin == rsayi) { printf("Tebrikler Bildin!\n"); break; } if (tahmin < rsayi) printf("Girdigin sayı kucuk "); if (tahmin > rsayi) printf("Girdigin sayi buyuk "); } return 0; } //algoritmaornekleri |
Çıktı:
1 2 3 4 5 6 7 8 9 10 |
0-100 arasında sayı tahmin programı Tahmin Et! :50 Girdigin sayı kucuk Tahmin Et! :75 Girdigin sayı kucuk Tahmin Et! :85 Girdigin sayı kucuk Tahmin Et! :90 Girdigin sayi buyuk Tahmin Et! :88 Girdigin sayı kucuk Tahmin Et! :89 Tebrikler Bildin! |
Çözüm 2: 0-1000 arasında rastgele sayı tahmin programı
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
#include <stdio.h> #include <stdlib.h> #include <time.h> int main(){ int n,sayac,tahmin,secim=1; while(secim==1){ srand(time(NULL)); n=rand()%1000+1; printf("\n....SAYIYI BULMAK ICIN 10 HAKKIN VAR....\n\n1 ve 1000 arasinda sayi tahmin ediniz : "); scanf("%d",&tahmin); for(int i=1;;i++){ if(tahmin<n){ printf("\nDaha buyuk bir sayiyla tekrar tahmin ediniz : "); scanf("%d",&tahmin); if(i==9){ printf("\n\nHAKKINIZ DOLDU UZGUNUM :(\a\a"); break; } } else if(tahmin>n){ printf("\nDaha kucuk bir sayiyla tekrar tahmin ediniz : "); scanf("%d",&tahmin); if(i==9){ printf("\n\nHAKKINIZ DOLDU UZGUNUM :(\a\a"); break; } } else if(tahmin==n){ printf("\nTebrikler %d. Tahmininiz Dogru !!! ",i); break; } } printf("\n\nTekrar oynamak ister misin ? (evet=1 , hayir=0) : "); scanf("%d",&secim); if(secim==0) break; if(secim!=1){ printf("HATALI GİRİS !!\a\a"); break; } } return 0; } |
Çıktı:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
....SAYIYI BULMAK ICIN 10 HAKKIN VAR.... 1 ve 1000 arasinda sayi tahmin ediniz : 500 Daha kucuk bir sayiyla tekrar tahmin ediniz : 250 Daha buyuk bir sayiyla tekrar tahmin ediniz : 350 Daha buyuk bir sayiyla tekrar tahmin ediniz : 450 Daha kucuk bir sayiyla tekrar tahmin ediniz : 400 Daha buyuk bir sayiyla tekrar tahmin ediniz : 430 Daha kucuk bir sayiyla tekrar tahmin ediniz : 425 Daha kucuk bir sayiyla tekrar tahmin ediniz : 415 Daha kucuk bir sayiyla tekrar tahmin ediniz : 410 Tebrikler 9. Tahmininiz Dogru !!! |
Add Comment