Advertisement
NuquernaNarsil

Untitled

Nov 16th, 2015
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.37 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <string>
  4. #include <fstream>
  5.  
  6. using namespace std;
  7.  
  8. void justowanie(string tekst)
  9. {
  10.     string justed;
  11.     int miejscespacji=0, x=1, y=0;
  12.     cout << tekst;
  13.    
  14.     for(int i=0; i<tekst.length();i++)
  15.     {
  16.        
  17.         if(x!=120 || i==0)
  18.             justed+=tekst[i];
  19.         if(x==120)
  20.         {
  21.             if(tekst[i]==' ')
  22.             {
  23.             justed+="\n";
  24.             }
  25.             else
  26.             {
  27.                 justed.insert(miejscespacji,"\n");
  28.                 justed.erase(miejscespacji+1,1);
  29.                 x++;
  30.             }  
  31.         x=1;
  32.         justed+=tekst[i];
  33.         }  
  34.        
  35.         if(justed[i]==' ')
  36.             miejscespacji=i;
  37.        
  38.         if(justed[justed.length()-1]==' ' && justed[justed.length()-2]=='\n')
  39.         {
  40.             justed.erase(justed.length()-1, 1);
  41.             x--;
  42.         }
  43.         x++;
  44.     }
  45.  
  46.    
  47.     ofstream zapis;
  48.     zapis.open("wyjustowany.txt");
  49.     zapis << justed;
  50.     zapis.close();
  51.     }
  52.  
  53.  
  54.  
  55. bool start()
  56. {
  57.     int choose;
  58.     cout <<"Program justuje tekst z pliku (.txt) o podanej nazwie, lub wczytany z klawiatury\n";
  59.     system("pause"); system("cls");
  60.     cout <<"Wczytac tekst z pliku, czy zostanie podany ?\n1.Z pliku.\n2.Podany.\nTwoj wybor: ";
  61.     do{
  62.     cin >> choose;
  63.         if(!cin || choose!=1 && choose!=2) 
  64.         {
  65.             cout <<"\nPodaj poprawna liczbe: ";
  66.             cin.clear();
  67.             cin.sync();
  68.         }
  69.     }while(!cin || choose!=1 && choose!=2);
  70.     system("pause"); system("cls");
  71.    
  72.     if(choose==1)
  73.         return 1;
  74.     else
  75.         return 0;
  76. }
  77.  
  78. void zpliku ()
  79. {
  80.     int choose;
  81.     ifstream plik;
  82.     string nazwapliku,tekst;
  83.    
  84.     do{
  85.         cout <<"Podaj nazwe pliku (bez rozszerzenia), z ktorego wczytac tekst: ";
  86.         cin >> nazwapliku;
  87.         nazwapliku+=".txt";
  88.         plik.open(nazwapliku.c_str());
  89.         if(plik.is_open())
  90.         {
  91.             while(plik.good())
  92.                 {
  93.                     getline(plik, tekst);
  94.                 }
  95.             justowanie(tekst);
  96.             choose=2;
  97.         }
  98.         else
  99.         {
  100.             cout <<"Problem z odczytem pliku. \nBrak pliku o takiej nazwie, lub plik nie jest plikiem .txt";
  101.             cout <<"\n\n1.Podaj nazwe ponownie.\n2.Wyjdz.\n\nWybor: ";
  102.             do{
  103.             cin >> choose;
  104.                 if(!cin || choose!=1 && choose!=2) 
  105.                 {
  106.                     cout <<"\nPodaj poprawna liczbe: ";
  107.                     cin.clear();
  108.                     cin.sync();
  109.                 }
  110.             }while(!cin || choose!=1 && choose!=2);
  111.         }
  112.         system("pause"); system("cls");
  113.     }while(!cin || choose==1 );
  114.    
  115. }
  116.  
  117. void stdstr()
  118. {  
  119.     string tekst;
  120.     cout <<"Podaj tekst, ktory ma zostac wyjustowany: ";
  121.     cin.clear();
  122.     cin.sync();
  123.     getline(cin, tekst);
  124.     justowanie(tekst);
  125. }
  126.  
  127.  
  128.  
  129. main()
  130. {
  131.     if(start())
  132.         zpliku();
  133.     else
  134.         stdstr();
  135.    
  136.     return 0;
  137. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement