fork download
  1. #include <iostream>
  2. #include <locale> // Do obsługi lokalizacji
  3. using namespace std;
  4.  
  5. int main() {
  6. // Ustawienie lokalizacji na polski
  7. setlocale(LC_ALL, "polish");
  8.  
  9. string haslo = "zebra"; // Hasło do odgadnięcia
  10. string odgadywane(haslo.length(), '*'); // Ciąg gwiazdek, który reprezentuje odgadywane hasło
  11. int proby = 10; // Maksymalna liczba prób
  12. char odp; // Zmienna do przechowywania odpowiedzi (litery)
  13.  
  14. // Pętla, która trwa dopóki użytkownik nie zgadnie hasła i ma dostępne próby
  15. while ((odgadywane != haslo) && (proby > 0)) {
  16. cout << "Zgadnij hasło: " << odgadywane << endl;
  17. cout << "Pozostało prób: " << proby << endl;
  18. cout << "Podaj literę: ";
  19. cin >> odp;
  20.  
  21. bool znaleziono = false;
  22.  
  23. // Sprawdzenie, czy wprowadzona litera znajduje się w haśle
  24. for (int i = 0; i < haslo.length(); ++i) {
  25. if (haslo[i] == odp && odgadywane[i] == '*') {
  26. odgadywane[i] = odp;
  27. znaleziono = true;
  28. }
  29. }
  30.  
  31. if (znaleziono) {
  32. cout << "Dobrze! Litera " << odp << " znajduje się w haśle!" << endl;
  33. } else {
  34. cout << "Niestety, litera " << odp << " nie znajduje się w haśle." << endl;
  35. proby--; // Zmniejszamy liczbę prób, jeśli litera była błędna
  36. }
  37. }
  38.  
  39. if (odgadywane == haslo) {
  40. cout << "Gratulacje! Odgadłeś hasło: " << haslo << endl;
  41. } else {
  42. cout << "Nie udało się odgadnąć hasła. Hasło brzmiało: " << haslo << endl;
  43. }
  44.  
  45. return 0;
  46. }
Success #stdin #stdout 0.01s 5292KB
stdin
Standard input is empty
stdout
Zgadnij hasło: *****
Pozostało prób: 10
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 9
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 8
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 7
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 6
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 5
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 4
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 3
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 2
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Zgadnij hasło: *****
Pozostało prób: 1
Podaj literę: Niestety, litera  nie znajduje się w haśle.
Nie udało się odgadnąć hasła. Hasło brzmiało: zebra