1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
void wyswietl_bity (unsigned int bits)
{
const int Bits = 8 * sizeof bits;
char tmp[ Bits + 1 ];
for( int i = 0; i < Bits; ++i )
{
tmp[ Bits - i - 1 ] = '0' + bits % 2;
bits /= 2;
}
tmp[ Bits ] = 0;
cout << tmp<<endl;
}
void wlacz_bit (unsigned int* bits, int pos)
{
*bits|=(1<<pos);
}
void wylacz_bit (unsigned int* bits, int pos)
{
*bits&=~(1<<pos);
}
void zmien_bit(unsigned int* bits, int pos)
{
*bits^=(1<<pos);
}
bool bit_wylaczony (unsigned int bits, int pos)
{
if (bits&(1<<pos))
{
return true;
}
else {
return false;}
}
int zakoduj (unsigned char tab[])
{
int wynik(0);
for (int i(0); i<4;i++)
{
wynik=wynik|tab[i]<<i*8;
}
return wynik;
}
void rozkoduj (int zakodowany,unsigned char tab[])
{
for (int i(0);i<4;i++)
{
tab[i]=tab[i]|(zakodowany>>i*8);
}
}
void wyswietl_tablice(unsigned char tab[])
{
for (int i(0);i<4;i++)
{
cout<<tab[i]<<" ";
}
}
string zaszyfruj (string wiadomosc,string klucz)
{
string szyfr=wiadomosc;
for(int i(0);i<wiadomosc.size();)
{
for (int j(0);j<klucz.size();j++,i++)
szyfr[i]^=klucz[j];
}
return szyfr;
unsigned char tablica[4] = {'p','i','e','s'},tablica_docelowa[4]={0,0,0,0};
int zakodowany(0);
cout<<"Tablica przed rozkodowaniem: ";
wyswietl_tablice(tablica);
zakodowany=zakoduj(tablica);
cout<<"\nZakodowany int: \n";
wyswietl_bity(zakodowany);
rozkoduj(zakodowany,tablica_docelowa);
cout<<"Tablica po rozkodowaniu: ";
wyswietl_tablice(tablica_docelowa);
for()
{
if(a==b)
{
nwd=a;
break
}
else if (a>b){
a=a-b;
esle if(a<b)
b=b-a;
}
}
|