#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
string words[] = {"elma", "armut", "çilek", "portakal", "ayva"}; // kelime listesi
srand(time(NULL)); // rastgele sayı üretmek için random tohumu ayarlıyoruz
int n = rand() % 5; // kelime listesinden rastgele bir kelime seçiyoruz
string word = words[n];
int len = word.length(); // kelimenin uzunluğunu alıyoruz
string dashes(len, '-'); // kelimenin yerine konacak tireleri oluşturuyoruz
int attempts = 0; // deneme sayısı
cout << "Kelimeyi tahmin etmek için " << len << " harfli bir kelime girin: " << dashes << endl;
while (attempts < len) {
char c;
cin >> c;
for(int i = 0; i < len; i++) {
if(word[i] == c) {
dashes[i] = c;
}
}
cout << dashes << endl;
attempts++;
}
if(dashes == word) {
cout << "Tebrikler, kelimeyi doğru tahmin ettiniz!" << endl;
} else {
cout << "Maalesef, kelimeyi yanlış tahmin ettiniz. Doğru kelime: " << word << endl;
}
return 0;
}
Bu kodda, string
veri tipini kullanarak oyun için bir kelime listesi oluşturuyoruz. srand()
fonksiyonunu kullanarak rastgele sayı üretmek için bir random tohumu ayarlıyoruz. Ardından, rand() % 5
fonksiyonunu kullanarak kelime listesinden rastgele bir kelime seçiyoruz.
Oyunda kullanıcının tahmin etmesi gereken kelimenin uzunluğunu alıyor ve yerine konacak tireleri oluşturuyoruz. Daha sonra, kullanıcının girdiği harfleri kontrol ederek doğruysa tirelerin yerine harf koyuyoruz. Kullanıcı her yanlış tahmininde deneme sayısını artırıyoruz.
Oyun sonunda, kullanıcının tüm harfleri doğru tahmin ettiği takdirde “Tebrikler!” mesajı görüntülenecek, aksi takdirde kullanıcının yanlış tahmin ettiği kelime ekrana yazdırılacaktır.
Örneğin, kelime “elma” ise program şu şekilde çalışacaktır:
Kelimeyi tahmin etmek için 4 harfli bir kelime girin: ----
e
-e--
l
el--
m
elma
Tebrikler, kelimeyi doğru tahmin ettiniz!