KONU : C Konsol Uygulamalar - rastgele 4 basamaklı sayı oluşturma. 4 basamaklı sayıyı basamaklarına ayırma. 4 basamaklı sayı tahmin etme oyunu. Mastermind oyun uygulaması oluşturma. Sonsuz döngü kullanımı ve break komutu kullanımı.
ETİKETLER: c - konsol - mastermind - basamak - matematik - random - rastgele - sayı - for - while
#include < stdio.h >
#include < string.h >
#include < stdlib.h >
void main()
{
char estimatedNumber[4];
int i, length;
//int tipine dönüştüreceğimiz sayı
int digitOk = 0;
int digitNotOk = 0;
//basamak değeri: abcd girilen sayımız d -> digitValue[3] olarak temsil edecek
int digitValue[4];
int targetNumber[4];
//tahmin edilecek sayının basamaklarını oluşturalım
for(i=0; i<4; i++)
{
targetNumber[i] = (rand() + rand())%10; // rand() fonksiyonu ile 0 - 10 arasında bir sayı oluşturuyorum
}
while(true)//sonsuz döngü, çıkılmak istenilene kadar devam edecek bir döngü oluşturuyorum.
{
digitOk = 0;
digitNotOk = 0;
//konsoldan bir sayı giriniz.
printf("\n\nEnter a number: ");
//konsoldan girilen sayıyı oku
gets(estimatedNumber);
//sayının uzunluğunu kontrol et
length = strlen(estimatedNumber);
//okunan dört basamaklı sayıyı int tipine dönüştür
for(i=0; i < length; i++)
{
digitValue[i] = estimatedNumber[i] - '0';
bool digitAvailable = false;
for(int j=0; j<4; j++)
{
if(digitValue[i] == targetNumber[j])
{
digitAvailable = true;
break;
}
}
if(digitAvailable == true)
{
if(digitValue[i] == targetNumber[i])
{
digitOk++;
}
else
{
digitNotOk++;
}
}
}
printf(" Information = +%d -%d ", digitOk, digitNotOk);
if(digitOk == 4)
{
break;
}
}
printf("\n ****Game Over**** ");
printf("\n ****Game Over**** ");
scanf("%d",&i);
}
Hiç yorum yok:
Yorum Gönder
Hatalı linkleri yorum yazarak bildirin