ΠΡΟΓΡΑΜΜΑ ΚΡΥΠΤΟΓΡΑΦΗΣΗ ΣΤΑΘΕΡΕΣ Ν = 50 ΜΕΤΑΒΛΗΤΕΣ ΑΚΕΡΑΙΕΣ: i, j, κενά, χαρ, θέση, λέξεις, μέγεθος, μέγιστο ΧΑΡΑΚΤΗΡΕΣ: ΑΒ[2, 24], ΚΕΙΜ[Ν], ΚΡΥΠ[Ν], γράμμα ΑΡΧΗ ΑΒ[1, 1] <- "Α" ΑΒ[1, 2] <- "Β" ΑΒ[1, 3] <- "Γ" ΑΒ[1, 4] <- "Δ" ΑΒ[1, 5] <- "Ε" ΑΒ[1, 6] <- "Ζ" ΑΒ[1, 7] <- "Η" ΑΒ[1, 8] <- "Θ" ΑΒ[1, 9] <- "Ι" ΑΒ[1, 10] <- "Κ" ΑΒ[1, 11] <- "Λ" ΑΒ[1, 12] <- "Μ" ΑΒ[1, 13] <- "Ν" ΑΒ[1, 14] <- "Ξ" ΑΒ[1, 15] <- "Ο" ΑΒ[1, 16] <- "Π" ΑΒ[1, 17] <- "Ρ" ΑΒ[1, 18] <- "Σ" ΑΒ[1, 19] <- "Τ" ΑΒ[1, 20] <- "Υ" ΑΒ[1, 21] <- "Φ" ΑΒ[1, 22] <- "Χ" ΑΒ[1, 23] <- "Ψ" ΑΒ[1, 24] <- "Ω" !Δημιουργία της 2ης γραμμής στον πίνακα ΑΒ ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 24 ΑΒ[2, i] <- ΑΒ[1, 25 - i] ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ i <- 1 ΓΡΑΨΕ "Δώστε ένα γράμμα, ή για τέλος :" ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ i, "ο γράμμα : " ΔΙΑΒΑΣΕ γράμμα ΑΝ γράμμα <> "" ΤΟΤΕ ΚΕΙΜ[i] <- γράμμα i <- i + 1 ΤΕΛΟΣ_ΑΝ ΜΕΧΡΙΣ_ΟΤΟΥ γράμμα = "" Η i > Ν ΑΝ i = 1 ΤΟΤΕ ΓΡΑΨΕ "ΔΕΝ ΔΟΘΗΚΕ ΚΑΝΕΝΑ ΓΡΑΜΜΑ. ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ" ΑΛΛΙΩΣ !Γέμισμα με κενά μετά το τέλος του κειμένου ΑΝ i < Ν + 1 ΤΟΤΕ ΓΙΑ j ΑΠΟ i ΜΕΧΡΙ Ν ΚΕΙΜ[j] <- " " ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΤΕΛΟΣ_ΑΝ !Υπολογισμός του μήκους του κειμένου, & των κενών μετά το τέλος του κειμένου κενά <- 0 i <- Ν ΟΣΟ ΚΕΙΜ[i] = " " ΕΠΑΝΑΛΑΒΕ !Τουλάχιστον μια λέξη άρα όχι παραβίαση ορίων πίνακα κενά <- κενά + 1 i <- i - 1 ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΑΝ κενά <> 0 ΤΟΤΕ ! Γ1 ΓΡΑΨΕ "Υπάρχουν ", κενά, " κενές θέσεις μετά το τέλος του κειμένου" ΓΡΑΨΕ "Το μήκος του κειμένου είναι ", Ν - κενά, " χαρακτήρες" ΑΛΛΙΩΣ ΓΡΑΨΕ "Το μήκος του κειμένου είναι ", Ν, " χαρακτήρες" ΤΕΛΟΣ_ΑΝ !Κρυπτογράφηση του κειμένου ΓΙΑ χαρ ΑΠΟ 1 ΜΕΧΡΙ Ν - κενά ! Γ2 ΑΝ ΚΕΙΜ[χαρ] = " " ΤΟΤΕ ΚΡΥΠ[χαρ] <- " " ΑΛΛΙΩΣ ! σειριακή αναζήτηση στην πρώτη γραμμή του ΑΒ με κλειδί το ΚΕΙΜ[χαρ] ΓΙΑ j ΑΠΟ 1 ΜΕΧΡΙ 24 ΑΝ ΑΒ[1, j] = ΚΕΙΜ[χαρ] ΤΟΤΕ θέση <- j ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ! σίγουρα βρέθηκε, καθώς όλα είναι γράμματα ΚΡΥΠ[χαρ] <- ΑΒ[2, θέση] ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ λέξεις <- 0 μέγεθος <- 0 μέγιστο <- -1 ! μια μικρή τιμή, σίγουρα υπάρχει μια λέξη ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν - κενά ! Γ3 ΑΝ ΚΕΙΜ[i] <> " " ΤΟΤΕ μέγεθος <- μέγεθος + 1 ΑΝ μέγεθος > μέγιστο ΤΟΤΕ μέγιστο <- μέγεθος ΤΕΛΟΣ_ΑΝ ΑΛΛΙΩΣ λέξεις <- λέξεις + 1 μέγεθος <- 0 ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ "Το αρχικό κείμενο :" ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν - κενά ΓΡΑΨΕ ΚΕΙΜ[i], " " ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ ΓΡΑΨΕ "Το κρυπτογραφημένο κείμενο :" ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν - κενά ΓΡΑΨΕ ΚΡΥΠ[i], " " ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ ΓΡΑΨΕ ΓΡΑΨΕ "Οι λέξεις του κειμένου είναι ", λέξεις + 1! μετράμε και την τελευταία λέξη ΓΡΑΨΕ "Η μεγαλύτερη λέξη έχει μήκος ", μέγιστο, " γράμματα " ΤΕΛΟΣ_ΑΝ ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ