Advertisement
Guest User

Untitled

a guest
Apr 5th, 2020
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.14 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4.  
  5. using namespace std;
  6.  
  7. void pierwsze(){
  8.     float dlugoscjeden, dlugoscdwa;
  9.     int ilosc=0;
  10.     string jeden, dwa;
  11.     fstream napisy;
  12.     fstream wyniki;
  13.  
  14.     napisy.open("napisy.txt", ios::in | ios::out);
  15.     wyniki.open("wyniki.txt", ios::in | ios::out);
  16.  
  17.     wyniki<<"Zadanie 1.\n\n";
  18.  
  19.     if(napisy.good() && wyniki.good()){
  20.         while(!napisy.eof()){
  21.             napisy>>jeden>>dwa;
  22.             dlugoscjeden = jeden.length();
  23.             dlugoscdwa = dwa.length();
  24.  
  25.             if(dlugoscjeden/dlugoscdwa >= 3.0 || dlugoscdwa/dlugoscjeden >= 3.0){
  26.                 if(!ilosc) wyniki<<"Pierwsza para: "<<jeden<<" "<<dwa<<"\n";
  27.                 ilosc++;
  28.             }
  29.  
  30.         }
  31.         wyniki<<"Ilosc: "<<ilosc<<"\n";
  32.     }
  33.  
  34.     napisy.close();
  35.     wyniki.close();
  36. }
  37.  
  38. void drugie(){
  39.     string jeden, dwa;
  40.     fstream napisy;
  41.     fstream wyniki;
  42.  
  43.     napisy.open("napisy.txt", ios::in | ios::out);
  44.     wyniki.open("wyniki.txt", ios::in | ios::out | ios_base::app);
  45.  
  46.     wyniki<<"\nZadanie 2.\n\n";
  47.  
  48.     if(napisy.good() && wyniki.good()){
  49.         while(!napisy.eof()){
  50.             napisy>>jeden>>dwa;
  51.             if(dwa.find(jeden) == 0){
  52.                 wyniki<<jeden<<" "<<dwa<<"\t\tNależy dopisać: ";
  53.                 for(int i=jeden.length(); i<dwa.length(); i++) wyniki<<dwa[i]<<" ";
  54.                 wyniki<<"\n";
  55.             }
  56.         }
  57.     }
  58.  
  59.     napisy.close();
  60.     wyniki.close();
  61. }
  62.  
  63. void trzecie(){
  64.     string jeden, dwa;
  65.     fstream napisy;
  66.     fstream wyniki;
  67.     int dlugosc=0, max_dlugosc=0, krotszy=0;
  68.  
  69.     napisy.open("napisy.txt", ios::in | ios::out);
  70.     wyniki.open("wyniki.txt", ios::in | ios::out | ios_base::app);
  71.  
  72.     wyniki<<"\nZadanie 3.\n\n";
  73.  
  74.     if(napisy.good() && wyniki.good()){
  75.         while(!napisy.eof()){
  76.             dlugosc = 0;
  77.             napisy>>jeden>>dwa;
  78.             if(dwa.length() >= jeden.length()) krotszy=jeden.length();
  79.             else krotszy=dwa.length();
  80.  
  81.             for(int i=0; i<krotszy; i++){
  82.                 if(jeden[jeden.length()-i] == dwa[dwa.length()-i]) dlugosc++;
  83.                 else{
  84.                     if(dlugosc > max_dlugosc) max_dlugosc = dlugosc;
  85.                     break;
  86.                 }
  87.             }
  88.         }
  89.     }
  90.  
  91.     napisy.close();
  92.     napisy.open("napisy.txt", ios::in | ios::out);
  93.  
  94.     wyniki<<"Najdluzsza dlugosc takiego samego zakonczenia: "<<max_dlugosc<<"\n";
  95.  
  96.     if(napisy.good() && wyniki.good()){
  97.         while(!napisy.eof()){
  98.             dlugosc = 0;
  99.             napisy>>jeden>>dwa;
  100.             if(dwa.length() >= jeden.length()) krotszy=jeden.length();
  101.             else krotszy=dwa.length();
  102.  
  103.             for(int i=0; i<krotszy; i++){
  104.                 if(jeden[jeden.length()-i] == dwa[dwa.length()-i]) dlugosc++;
  105.                 else{
  106.                     if(dlugosc == max_dlugosc) wyniki<<jeden<<" "<<dwa<<"\n";
  107.                     break;
  108.                 }
  109.             }
  110.         }
  111.     }
  112.  
  113.     napisy.close();
  114.     wyniki.close();
  115. }
  116.  
  117. int main(){
  118.     pierwsze();
  119.     drugie();
  120.     trzecie();
  121.  
  122.     return 0;
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement