Δημοσιεύτηκε: 15 Νοέμ 2014, 17:44
από konnn
Star_Light έγραψε:
Κώδικας: Επιλογή όλων
#include<stdio.h>
#define MAX_ROWS 26
#define MAX_COLS 26

int main(void)
{
   char tabula_recta[MAX_ROWS][MAX_COLS];
   int pos , row , col;
   
   for( row=0; row < MAX_ROWS; row++){
      pos = 0;
      for( col=0; col < MAX_COLS; col++){
         if('A'+row+col > 'Z' && row > 0){
            tabula_recta[row][col] = 'A'+ pos;
            pos++;
         }
      else if('A' + row + col == 'Z')
         tabula_recta[row][col] = 'Z';
      else
         tabula_recta[row][col] = 'A'+row+col;
      }
   }
   
   puts("Printing tabula recta table...");
   
   for( row=0; row<MAX_ROWS; row++) {
      printf("\n");
      for( col=0; col<MAX_COLS; col++){
            printf("%c" , tabula_recta[row][col]);
      }
   }

return 0;
}


Αυτο ειναι μια υλοποιηση του Tabula recta* για τον κρυπταλγοριθμο του Vigenere , σκέφτομαι να την χρησιμοποιήσω οταν βρω χρονο για να υλοποιήσω το προγραμμα της κρυπτογραφησης. Σχολιασμοί - επισημάνσεις και διορθωσεις ευπρόσδεκτα.

@migf1 εισαι ακομα εδώ?

και στο ideone :

http://ideone.com/iMOTMj

* http://en.wikipedia.org/wiki/Tabula_recta


Εγώ θα υλοποιήσω την μέθοδο kasiski και ενδέχεται να χρησιμοποιήσω το κωδικά σου, αν χρειαστεί κάπου.Δε σε πειράζει;