Advertisement
NuquernaNarsil

Deszyfracja_płotka

Nov 3rd, 2014
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.51 KB | None | 0 0
  1. #include<iostream>
  2. #include<conio.h>
  3. #include<string>
  4. #include<fstream>
  5. using namespace std;
  6. main()
  7. {
  8.     string krypto,klu,tjawny;
  9.     int i,k=0,ilosc,l;
  10.     ifstream klucz("klucz.txt");
  11.     ifstream kryptogram("kryptogram.txt");
  12.     if (klucz.is_open())
  13.     {
  14.         while(klucz.good())
  15.         {
  16.             getline(klucz,klu);
  17.         }
  18.         klucz.close();
  19.     }
  20.     if (kryptogram.is_open())
  21.     {
  22.         while(kryptogram.good())
  23.         {
  24.             getline(kryptogram,krypto);
  25.         }
  26.         kryptogram.close();
  27.     }
  28.        if(klu=="2")
  29.        ilosc=2;
  30.        if(klu=="3")
  31.        ilosc=3;
  32.        if(klu=="4")
  33.        ilosc=4;
  34.        if(klu=="5")
  35.        ilosc=5;
  36.        if(klu=="6")
  37.        ilosc=6;
  38.        if(klu=="7")
  39.        ilosc=7;
  40.        if(klu=="8")
  41.        ilosc=8;
  42.        if(klu=="9")
  43.        ilosc=9;
  44.     cout<<"Kryptogram: "<<krypto<<endl;
  45.     cout<<"Klucz: "<<ilosc<<endl;
  46.  
  47.     k=krypto.length()%ilosc;
  48.     l=krypto.length()/ilosc;
  49.     int x=0,y=0;
  50.  
  51.  
  52.     string d[ilosc];
  53.  
  54.     for(int i=0; i<krypto.length(); i++)
  55.     {
  56.         if(x<k)
  57.         {
  58.             d[y]+=krypto[i];
  59.             //cout << y <<" " <<d[y]<<endl;
  60.             if((i+1)%(l+1)==0)
  61.             {
  62.             x++;
  63.             y++;
  64.             }
  65.         }
  66.         else
  67.         {
  68.             d[y]+=krypto[i];
  69.             //cout << y <<" " <<d[y]<<endl;
  70.             if((i+1)%l==0)
  71.             {
  72.                 y++;
  73.             }
  74.         }
  75.     }
  76.  
  77. string odsz;
  78. for(int i=0; i<l+1; i++)
  79. {
  80.     for(int j=0;j<ilosc;j++)
  81.         odsz+=d[j][i];
  82. }
  83. cout <<endl<<endl<< odsz;
  84.  
  85.  
  86.     getch();
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement