#include <iostream>
#include <cmath>
using namespace std;
int main() {
setlocale(LC_ALL, "Polish");
string haslo = "zebra";
string odgadywane(haslo.length(), '*');
int proby = 10;
string odp;
while ((odgadywane != haslo) && (proby > 0)) {
cout << "Zgadnij hasło " << odgadywane << endl;
cout << "Pozostało prób: " << proby << endl;
cout << "Podaj literę ";
cin >> odp;
cout << odp << endl;
if (haslo.find(odp) < haslo.length()) {
int x = haslo.find(odp);
while (x < haslo.length()) {
odgadywane.replace(x, 1, odp);
x = haslo.find(odp, x + 1);
}
}
else
proby--;
}
if (haslo == odgadywane)
cout << "Gratulacje - hasło to " << haslo << endl;
else
cout << "Nie odgadnięto hasła :-(" << haslo << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICAgc2V0bG9jYWxlKExDX0FMTCwgIlBvbGlzaCIpOwogICBzdHJpbmcgaGFzbG8gPSAiemVicmEiOwogICBzdHJpbmcgb2RnYWR5d2FuZShoYXNsby5sZW5ndGgoKSwgJyonKTsKICAgaW50IHByb2J5ID0gMTA7CiAgIHN0cmluZyBvZHA7CiAgIAogICB3aGlsZSAoKG9kZ2FkeXdhbmUgIT0gaGFzbG8pICYmIChwcm9ieSA+IDApKSB7CiAgICAgICAgIGNvdXQgPDwgIlpnYWRuaWogaGFzxYJvICIgPDwgb2RnYWR5d2FuZSA8PCBlbmRsOwogICAgICAgICBjb3V0IDw8ICJQb3pvc3RhxYJvIHByw7NiOiAiIDw8IHByb2J5IDw8IGVuZGw7CiAgICAgICAgIGNvdXQgPDwgIlBvZGFqIGxpdGVyxJkgIjsKICAgICAgICAgY2luID4+IG9kcDsKICAgICAgICAgY291dCA8PCBvZHAgPDwgZW5kbDsKICAgICAgICAgaWYgKGhhc2xvLmZpbmQob2RwKSA8IGhhc2xvLmxlbmd0aCgpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHggPSBoYXNsby5maW5kKG9kcCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKHggPCBoYXNsby5sZW5ndGgoKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9kZ2FkeXdhbmUucmVwbGFjZSh4LCAxLCBvZHApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSBoYXNsby5maW5kKG9kcCwgeCArIDEpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvYnktLTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhhc2xvID09IG9kZ2FkeXdhbmUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3V0IDw8ICJHcmF0dWxhY2plIC0gaGFzxYJvIHRvICIgPDwgaGFzbG8gPDwgZW5kbDsKICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgY291dCA8PCAiTmllIG9kZ2FkbmnEmXRvIGhhc8WCYSA6LSgiIDw8IGhhc2xvIDw8IGVuZGw7CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKfQ==