fork download
  1. //JZLICZ-Zliczacz liter_Mariusz_Tryba
  2. #include <iostream>
  3. #include <string>
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8. //sumowanie linijek do jednego stringa napis
  9.  
  10. string napis,sklad;
  11. //napis.clear(),sklad.clear();
  12. int t=0;//cout<<'\a';
  13. cin>>t;
  14. for(int i=0; i<=t; i++)
  15. {
  16. getline(cin,sklad); //getline(cin,sklad);
  17. napis+=sklad;
  18. //sklad.clear();
  19. //cin.ignore();
  20. //cin.get();
  21. }
  22. cout<<napis<<endl;
  23.  
  24. //wykasowanie spacji
  25.  
  26. for (unsigned int i=0; i<napis.length()-1; i++)
  27. {
  28. if(napis[i]==' ')
  29. napis.erase(i,1);
  30. }
  31.  
  32. string litery="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
  33.  
  34. int licznik=0;
  35.  
  36. //podwojna petla oblicza ilosc wystapien kazdej z liter
  37. //i wypisuje je kiedy wystapily wiecej niz 0 razy
  38.  
  39. for(unsigned int j=0; j<litery.length()-1; j++)
  40. {
  41. for(unsigned int i=0; i<napis.length()-1; i++)
  42. {
  43. if(napis[i]==litery[j])
  44. licznik++;
  45. }
  46. if (licznik!=0)
  47. {
  48. cout<<litery[j]<<" "<<licznik<<endl;
  49. //cout<<'\a';
  50. licznik=0;
  51. }
  52. }
  53. return 0;
  54. }
Runtime error #stdin #stdout #stderr 0s 15240KB
stdin
ala ma kota
Ola ma psa
stdout

	
stderr
terminate called after throwing an instance of 'std::out_of_range'
  what():  basic_string::erase: __pos (which is 569) > this->size() (which is 0)