C++ Adam Asmaca

Konu sahibi son olarak 3306 gün önce görüldü
Kod:
[COLOR=#000000]#include <iostream>[/COLOR]
[COLOR=#000000]#include <string>[/COLOR]
[COLOR=#000000]#include <ctime>[/COLOR]
[COLOR=#000000]#include <cstdlib>[/COLOR]
[COLOR=#000000]#include <cctype>[/COLOR]

[COLOR=#000000]using namespace std;[/COLOR]

[COLOR=#000000]const int NUM = 10;[/COLOR]
[COLOR=#000000]const string kelimeList[NUM] = {"astronot", "elestiri","alfabe","amele", "oyuncak",[/COLOR]
[COLOR=#000000]"omurga","vasita", "veteriner", "marifet", "memleket"};[/COLOR]

[COLOR=#000000]int main()[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]srand(time(0));[/COLOR]

[COLOR=#000000]char oyun;[/COLOR]
[COLOR=#000000]cout << "Kelime Oyununa baslamak istiyor musunuz <e/h>? ";[/COLOR]
[COLOR=#000000]cin >> oyun;[/COLOR]
[COLOR=#000000]oyun = tolower(oyun);[/COLOR]

[COLOR=#000000]while(oyun == 'e')[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]string kelime = kelimeList[rand() % NUM];[/COLOR]
[COLOR=#000000]int len = kelime.length();[/COLOR]
[COLOR=#000000]string tahmin(len, '-');[/COLOR]
[COLOR=#000000]string yanlis_tahminler;[/COLOR]
[COLOR=#000000]int hak = 3;[/COLOR]

[COLOR=#000000]cout << len << " harften olusan gizli kelimeyi bul.\n";[/COLOR]
[COLOR=#000000]cout << "Sadece " << hak << " yanlis yapma hakkin var."[/COLOR]
[COLOR=#000000]<< "Herseferde bir harf soyleyebilirsin.\n\n";[/COLOR]

[COLOR=#000000]cout << "Gizli kelime: " << tahmin << endl;[/COLOR]
[COLOR=#000000]while( hak > 0 && tahmin != kelime )[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]char harf;[/COLOR]
[COLOR=#000000]cout << "Bir harf giriniz: ";[/COLOR]
[COLOR=#000000]cin >> harf;[/COLOR]
[COLOR=#000000]if( yanlis_tahminler.find(harf) != string::npos[/COLOR]
[COLOR=#000000]|| tahmin.find(harf) != string::npos)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]cout << "Bu harfi daha once girmistiniz.";[/COLOR]
[COLOR=#000000]cout << "Yeniden deneyin.\n\n";[/COLOR]
[COLOR=#000000]continue;[/COLOR]
[COLOR=#000000]}[/COLOR]

[COLOR=#000000]int loc = kelime.find(harf);[/COLOR]
[COLOR=#000000]if ( loc == string::npos)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]cout << "Yanlis tahmin! Girdiginiz harf kelime icerisinde yok.\n";[/COLOR]
[COLOR=#000000]--hak;[/COLOR]
[COLOR=#000000]yanlis_tahminler += harf;[/COLOR]
[COLOR=#000000]}[/COLOR]
[COLOR=#000000]else[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]cout << "Dogru tahmin.\n";[/COLOR]
[COLOR=#000000]tahmin[loc] = harf;[/COLOR]

[COLOR=#000000]loc = kelime.find(harf, loc+1);[/COLOR]
[COLOR=#000000]while(loc != string::npos)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]tahmin[loc] = harf;[/COLOR]
[COLOR=#000000]loc = kelime.find(harf, loc+1);[/COLOR]
[COLOR=#000000]}[/COLOR]
[COLOR=#000000]}[/COLOR]

[COLOR=#000000]cout << "Kelimeniz: "<< tahmin << endl;[/COLOR]
[COLOR=#000000]if ( tahmin != kelime )[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]if ( yanlis_tahminler.length() > 0 )[/COLOR]
[COLOR=#000000]cout << "Yanlis tahminleriniz: " << yanlis_tahminler << endl;[/COLOR]
[COLOR=#000000]cout << hak << " yanlis hakkiniz kaldi.\n\n";[/COLOR]
[COLOR=#000000]}[/COLOR]

[COLOR=#000000]}//end of while [/COLOR]

[COLOR=#000000]if ( hak > 0 )[/COLOR]
[COLOR=#000000]cout << "Tebrikler! Kelimeyi tahmin edebildiniz.\n";[/COLOR]
[COLOR=#000000]else[/COLOR]
[COLOR=#000000]cout << "Uzgunum, dogru kelime: " << kelime << endl;[/COLOR]

[COLOR=#000000]cout << endl << "Yeniden oynamak istiyor musunuz?<e/h>: ";[/COLOR]
[COLOR=#000000]cin >> oyun;[/COLOR]
[COLOR=#000000]oyun = tolower(oyun); [/COLOR]

[COLOR=#000000]}//end of while[/COLOR]

[COLOR=#000000]cout << "Hoscakal! [/COLOR][IMG]http://www.frmtr.com/images/smilies/smile.gif[/IMG][COLOR=#000000]\n";[/COLOR]

[COLOR=#000000]return 0;[/COLOR]
[COLOR=#000000]}[/COLOR]
 
Geri