Advertisement
Guest User

ProgramWisielec

a guest
Jun 25th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.92 KB | None | 0 0
  1. // ProgramKarol.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include<iostream>
  5. #include <string>
  6. #include<string.h>
  7. #include<stdio.h>
  8. #include<stdlib.h>
  9.  
  10. using namespace std;
  11.  
  12. void startGry();
  13.  
  14. char* wprowadzSlowo()
  15. {
  16.     string slowo1;
  17.     cout << "Podaj slowo: " << endl;
  18.     cin>>slowo1;
  19.     char* slowo=new char[slowo1.size() + 1];
  20.     copy(slowo1.begin(), slowo1.end(), slowo);
  21.     slowo[slowo1.size()] = '\0';
  22.     return slowo;
  23. }
  24.  
  25. void wyswietlanieSlowa(string slowo)
  26. {
  27.     cout<<slowo<<endl;
  28. }
  29.  
  30. bool sprawdzIstnienie(char* slowo, char znak, char* zgadujacego)
  31. {
  32.     int dlugosc=strlen(slowo);
  33.     bool zgadniecie=false;
  34.     for (int i = 0; i < dlugosc; i++)
  35.     {
  36.         if (znak == slowo[i])
  37.         {
  38.             zgadujacego[i] = znak;
  39.             zgadniecie=true;
  40.         }
  41.     }
  42.     return zgadniecie;
  43. }
  44.  
  45. bool zgadniecieWszystkiego(char* slowo)
  46. {
  47.     bool wynik=true;
  48.     int dlugosc=strlen(slowo);
  49.     for(int i=0;i<dlugosc;i++)
  50.     {
  51.         if(slowo[i]=='*')
  52.         {
  53.             wynik=false;
  54.         }
  55.     }
  56.     return wynik;
  57. }
  58.  
  59. void zgadywanie(int length, char* slowoKlucz)
  60. {
  61.     char litera;
  62.     int dlugosc=length, szanse=5;
  63.     char slowoPuste[dlugosc];
  64.     for (int i=1; i < dlugosc-1; i++)
  65.     {
  66.         slowoPuste[i] = '*';
  67.     }
  68.     slowoPuste[0]=slowoKlucz[0];
  69.     slowoPuste[dlugosc-1]=slowoKlucz[dlugosc-1];
  70.     slowoPuste[dlugosc]='\0';
  71.     while(!(zgadniecieWszystkiego(slowoPuste)))
  72.     {
  73.         wyswietlanieSlowa(slowoPuste);
  74.         cout<<"Podaj litere: "<<endl;
  75.         cin>>litera;
  76.         system("cls");
  77.         if(!(sprawdzIstnienie(slowoKlucz, litera, slowoPuste))){
  78.             szanse-=1;
  79.             cout<<"Nie zgadles litery! Ilosc pozostałych szans: "<<szanse<<endl;
  80.         }else{
  81.             cout<<"Brawo, udalo Ci sie odgadnac litere! Ilosc pozostałych szans: "<<szanse<<endl;
  82.         }
  83.         if(szanse==0)
  84.         {
  85.             do{
  86.             system("cls");
  87.             cout<<"Niestety przegrales... :("<<endl<<"Wybierz jedna z czynnosci: "<<endl<<"1- od nowa"<<endl<<"2- wyjscie"<<endl;
  88.             cin>>litera;
  89.         }while(litera!='1'&&litera!='2');
  90.         if(litera=='1')
  91.         {
  92.             system("cls");
  93.             startGry();
  94.         }else{
  95.         system("exit");
  96.         }
  97.             break;
  98.         }
  99.     }
  100.     if(zgadniecieWszystkiego(slowoPuste)){
  101.  
  102.         do{
  103.             system("cls");
  104.             cout<<"Brawo wygrales gre!"<<endl<<"Wybierz jedna z czynnosci: "<<endl<<"1- od nowa"<<endl<<"2- wyjscie"<<endl;
  105.             cin>>litera;
  106.         }while(litera!='1'&&litera!='2');
  107.         if(litera=='1')
  108.         {
  109.             system("cls");
  110.             startGry();
  111.         }else{
  112.         system("exit");
  113.         }
  114.     }
  115. }
  116.  
  117. void startGry(){
  118.  
  119.     char* slowoKlucz=wprowadzSlowo();
  120.     int length = strlen(slowoKlucz);
  121.     zgadywanie(length, slowoKlucz);
  122. }
  123.  
  124. int main(int argc,  char** argv)
  125. {
  126.     startGry();
  127.  
  128.     return 0;
  129. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement