Doğru Sayıyı Bulana Kadar Nasıl Tekrar Ettirilir? (C)
-
wasd bunu yazdı:
-----------------------------goto kullanmak okunulabilirliği azaltır. koda bakan adamı "neyi nereye göndermişsin ne yapmışın be amk" diye düşündürür :D
Bunun dışında sayı tahminini şöyle yaparsın;
while(tahmin==4) //while ile sayı bulunana kadar döndürüceksin yapılacakları
{
printf("Tahmin et bakam: ");
scanf("%d",&tahmin);
if(tahmin==4) //doğru bulunduysa
printf("afferin sana bildin");
else if(tahmin
printf("biraz daha büyük bi sayı gir");
else if(tahmin>4) //girilen değer büyükse
printf("biraz daha küçük bi sayı gir");
else //diğer durumlara karşı hata kontrolü
printf("adam akıllı bi sayı gir!");
}
bunun haricinde 2 tavsiyem daha var :) srand() fonksiyonunu araştır, bu fonksiyonla rastgele değil rassallaştırılmış sayılar üretirsin ve her seferinde yeni bir sayı verir. (eğer bu muhabbeti bilmiyosan rand ve srand fonksiyonlarını kullan dene aradaki farkı anlayacaksın,anlatmıyorumki merak duygun kabarsın :))
ayrıca return komutunu kullanmayı tam bilmiyorsan if yapısından true false döndürmeyi dene return kullanarak ve whileın başka bir değişkenin true olup olmadığını kontrol etmesini sağla. çeşitlilik yarat kendine göre işte =)
-----------------------------Hocam while(tahmin==4) yerine while(tahmin!=4) kullanmalısın ki tahmin 4 olmadığı sürece döngünün içine girsin, 4 olduğu zaman da döngüden çıksın
-
#include<stdio.h>
#include<locale>
void main()
{
setlocale(LC_ALL,"TURKISH");
int tahmin=0;
while(tahmin!=4) //while ile sayı bulunana kadar döndürüceksin yapılacakları
{
printf("Tahmin et bakam: ");
scanf_s("%d",&tahmin);
if(tahmin==4) //doğru bulunduysa
{
printf("afferin sana bildin\n");
}
else if(tahmin<4) //girilen değer küçükse
{
printf("biraz daha büyük bi sayı gir\n");
}
else if(tahmin>4) //girilen değer büyükse
{
printf("biraz daha küçük bi sayı gir\n");
}
else //diğer durumlara karşı hata kontrolü
{
printf("adam akıllı bi sayı gir!\n");
}
}
}--------------------------------------------
kodun doğru hali bu işte :) doğru tahmin olana kadar çalışıyor visual studioda sıkıntı yok ama devc++da nolur bilemem.
ayrıca true false döndürmek dediğim olay şu;
if(hede==3)
return true;
else
return false;
true cevabını alana kadar döngüyü döndür gibi kullanılıyo,kimi zaman çok faydalı olabiliyo :)
