Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.59 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4.  
  5. using namespace std;
  6.  
  7. struct element
  8. {
  9. string slowo;
  10. element *next;
  11. };
  12.  
  13. void dodawanie_slowa (element *&stos, string znak)
  14. {
  15. element *el = new element;
  16. el -> slowo = znak;
  17. el -> next = stos;
  18. stos = el;
  19. }
  20.  
  21. void usun_element (element *&stos)
  22. {
  23. element *temp=stos;
  24. stos=stos->next;
  25. delete temp;
  26. }
  27.  
  28. void wczytywanie (string &tekst)
  29. {
  30. ifstream plik;
  31. string sciezka;
  32. sciezka="dane.txt";
  33. string znak;
  34. char ostatni_znak;
  35. element *stos=nullptr;
  36.  
  37. plik.open(sciezka);
  38.  
  39. while(!plik.eof())
  40. {
  41. ostatni_znak='a';
  42.  
  43. while ( !plik.eof() && (int)ostatni_znak!=33 && (int)ostatni_znak!=46 && (int)ostatni_znak!=63 )
  44. {
  45.  
  46. plik >> znak;
  47. if( (znak.back()== '?') || (znak.back()=='!') || (znak.back()=='.'))
  48. {
  49. ostatni_znak = znak.back();
  50. znak.pop_back();
  51. }
  52. znak=znak+" ";
  53. dodawanie_slowa(stos,znak);
  54. }
  55.  
  56. while(stos!=nullptr)
  57. {
  58. znak = stos->slowo;
  59. usun_element(stos);
  60. tekst = tekst + znak;
  61. }
  62.  
  63. tekst.pop_back();
  64. if(!plik.eof())
  65. tekst=tekst+ostatni_znak;
  66. tekst=tekst+"\n";
  67. }
  68. }
  69.  
  70. int main()
  71. {
  72. string tekst="";
  73.  
  74. cout<<"Zadanie 1:"<<endl<<endl;
  75. wczytywanie(tekst);
  76. cout<<tekst;
  77. cout<<endl<<"--------------------------------------"<<endl<<endl;
  78.  
  79. cout<<"Zadanie 2:"<<endl;
  80.  
  81. return 0;
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement