Erstelle ein Polybios-Quadrat ohne Schlüssel?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Geht man davon aus, dass dein Quadrat die Maße 5x5 haben soll ergibt sich das Quadrat im Bild. Du siehst ohne Schlüssel verwendet man jediglich das Alphabet als solchen und setzt, da man nur 25 Plätze frei hat I und J gleich. Möglich ist es auch 'U' und 'V' gleichzusetzen.

Bild zum Beitrag

Von da aus geht es ganz einfach. Man liest die Tabelle so, dass man zuerst einmal die linke Zahl nimmt und dann die obere. Der Buchstabe B entspricht zum Beispiel 12.

Zu deinen Aufgaben:

a)

C O D I E R U N G I S T L U S T I G
13 34 14 24 15 42 45 33 22 24 43 44 31 45 43 44 24 22

Das Ergebnis ist also: 13 34 14 24 15 42 45 33 22 24 43 44 31 45 43 44 24 22

b) 35 24 55 55 11 45 33 14 15 24 43 13 42 15 32 15

Hier ist das Ergebnis: PIZZAUNDEISCREME

c) 24 13 23 32 45 43 43 32 24 13 22 25 34 33 55 15 33 44 42 24 15 42 15 33

Hier ist das Ergebnis: ICHMUSSMICGKONZENTRIEREN.

Ich vermute gemeint ist:
ICHMUSSMICHKONZENTRIEREN, dafür bräuchte man jedoch den verschlüsselten Code:
24 13 23 32 45 43 43 32 24 13 23 25 34 33 55 15 33 44 42 24 15 42 15 33

Liebe Grüße.

Woher ich das weiß:Hobby – Hobbyprogrammierer
 - (Computer, Schule, PC)

Das c++ Programm könnte so aussehen:

#include <iostream>
#include <iomanip>
#include <cstring>

int main(int argc, char **argv)
{
 char texta[17] = {35, 24, 55, 55, 11, 45, 33, 14, 15, 24, 43, 13, 42, 15, 32, 15, 0};
 char textb[25] = {24, 13, 23, 32, 45, 43, 43, 32, 24, 13, 22, 25, 34, 33, 55, 15, 33, 44, 42, 24, 15, 42, 15, 33, 0};
                          //1 '2 '3 '4 '5  
 char schluessel[5][5] = {
                          'A', 'B', 'C', 'D', 'E',
                          'F', 'G', 'H', 'I', 'K',
                          'L', 'M', 'N', 'O', 'P',
                          'Q', 'R', 'S', 'T', 'U',
                          'V', 'W', 'X', 'Y', 'Z'};


int i, zehner, einer, lge;

   std::cout << "Polybius Test" << std::endl;
   
   
lge = strlen(texta);   
   
   std::cout << "Texta verschluesselt" << std::endl;
   for (i = 0; i < lge; i++)
   {
    zehner = (int)texta[i] / 10;
    einer = (int)texta[i] % 10;
    std::cout << "i=" << std::setw(2) << i << "  " << (int)texta[i] << " zehner=" <<zehner << "   einer=" << einer;
    std::cout << "  =" << schluessel[zehner-1][einer-1]<< std::endl;   
   }   
   
   
    std::cout << std::endl << "-------------------------" << std::endl;
 
   for (i = 0; i < lge; i++)
   {
    zehner = (int)texta[i] / 10;
    einer = (int)texta[i] % 10;
    std::cout << schluessel[zehner-1][einer-1];   
   }

   std::cout << std::endl << "-------------------------" << std::endl;  
 
  lge = strlen(textb);   
 
  std::cout << "Textb verschluesselt" << std::endl;
   for (i = 0; i < lge; i++)
   {
    zehner = (int)textb[i] / 10;
    einer = (int)textb[i] % 10;
    std::cout << "i=" << std::setw(2) << i << "  " << (int)textb[i] << " zehner=" <<zehner << "   einer=" << einer;
    std::cout << "  =" << schluessel[zehner-1][einer-1]<< std::endl;   
   }   
   
   
    std::cout << std::endl << "-------------------------" << std::endl;

   for (i = 0; i < lge; i++)
   {
    zehner = (int)textb[i] / 10;
    einer = (int)textb[i] % 10;
    std::cout << schluessel[zehner-1][einer-1];   
   }

 std::cout << std::endl << "-------------------------" << std::endl;  
 
  return 0;
}

Eragon saphira17 hat recht, da istein Zahlendreher drin:
Ausgabe des obigen Programms auf dem Screen:
Polybius Test
Texta verschluesselt
i= 0  35 zehner=3   einer=5  =P
i= 1  24 zehner=2   einer=4  =I
i= 2  55 zehner=5   einer=5  =Z
i= 3  55 zehner=5   einer=5  =Z
i= 4  11 zehner=1   einer=1  =A
i= 5  45 zehner=4   einer=5  =U
i= 6  33 zehner=3   einer=3  =N
i= 7  14 zehner=1   einer=4  =D
i= 8  15 zehner=1   einer=5  =E
i= 9  24 zehner=2   einer=4  =I
i=10  43 zehner=4   einer=3  =S
i=11  13 zehner=1   einer=3  =C
i=12  42 zehner=4   einer=2  =R
i=13  15 zehner=1   einer=5  =E
i=14  32 zehner=3   einer=2  =M
i=15  15 zehner=1   einer=5  =E

-------------------------
PIZZAUNDEISCREME
-------------------------
Textb verschluesselt
i= 0  24 zehner=2   einer=4  =I
i= 1  13 zehner=1   einer=3  =C
i= 2  23 zehner=2   einer=3  =H
i= 3  32 zehner=3   einer=2  =M
i= 4  45 zehner=4   einer=5  =U
i= 5  43 zehner=4   einer=3  =S
i= 6  43 zehner=4   einer=3  =S
i= 7  32 zehner=3   einer=2  =M
i= 8  24 zehner=2   einer=4  =I
i= 9  13 zehner=1   einer=3  =C
i=10  22 zehner=2   einer=2  =G
i=11  25 zehner=2   einer=5  =K
i=12  34 zehner=3   einer=4  =O
i=13  33 zehner=3   einer=3  =N
i=14  55 zehner=5   einer=5  =Z
i=15  15 zehner=1   einer=5  =E
i=16  33 zehner=3   einer=3  =N
i=17  44 zehner=4   einer=4  =T
i=18  42 zehner=4   einer=2  =R
i=19  24 zehner=2   einer=4  =I
i=20  15 zehner=1   einer=5  =E
i=21  42 zehner=4   einer=2  =R
i=22  15 zehner=1   einer=5  =E
i=23  33 zehner=3   einer=3  =N

-------------------------
ICHMUSSMICGKONZENTRIEREN
-------------------------




Woher ich das weiß:Hobby