Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<cmath>
- using namespace std;
- char litera(string, int, int);
- double blad(string);
- main()
- {
- double tabBledow[26];
- string napis = "abcde";
- string szyfr;
- for(int i=0; i<26; i++)
- {
- for(int j=0; j<napis.length(); j++)
- {
- szyfr[j] = litera(napis, i, j);
- }
- cout << "Dla klucza:"<< i <<endl;
- cout << blad(szyfr);
- tabBledow[i] = blad(szyfr);
- }
- }
- char litera(string napis, int klucz, int miejsce)
- {
- return (char)((((int)napis[miejsce]-97+klucz)%26)+97);
- };
- double blad(string szyfr)
- {
- double pwn[26]={0.099, 0.0147, 0.0436, 0.0325, 0.0877, 0.003, 0.0142, 0.0108, 0.0821, 0.0228, 0.0351, 0.0392, 0.028, 0.0572, 0.086, 0.0313, 0.0014, 0.0469, 0.0498, 0.0398, 0.025, 0.0004, 0.0465, 0.0002, 0.0376, 0.0653};
- int tab[26];
- for(int i = 0; i<26; i++) {tab[i]=0;}
- double suma;
- double szukana;
- for(int i = 0; i<szyfr.length(); i++)
- {
- tab[((int)szyfr[i])-97] += 1;
- }
- for(int i = 0; i<26; i++)
- {
- suma += fabs((tab[i]/szyfr.length())-pwn[i]);
- }
- szukana = (1 - suma/26);
- return (szukana);
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement