Kodiranje sporočila
Napišite program, ki bo s skrivno šifro zakodiral vnešeno besedilo, ki
naj vsebuje le črke od A do E. Navodilo za kodiranje naj bo naslednje:
$A \to E$, $B \to C$, $C\to B$, $D\to A$, $E\to D$.
Naprimer: beseda $DABCA$ naj se zakodira v besedo $AECBE$.
Namig
Z zanko se sprehodi po vhodnem nizu in gradi nov niz. S pomočjo pogojnih stavkov vsako črko pretvori upoštevajoč pravila.
Rešitev (Java)
import javax.swing.JOptionPane;
public class KodiranjeSporocila {
public static void main(String[] args) {
// vhodni podatki
String beri = JOptionPane
.showInputDialog("Vnesi besedilo, ki ga želiš zakodirati po skritem postopku (Vnesi le znake od A-E).");
String kodirano_sporocilo = "";
// kodiramo znak za znakom
for (int i = 0; i < beri.length(); ++i) {
if (beri.charAt(i) == 'A') {
kodirano_sporocilo += 'E';
} else if (beri.charAt(i) == 'B') {
kodirano_sporocilo += 'C';
} else if (beri.charAt(i) == 'C') {
kodirano_sporocilo += 'B';
} else if (beri.charAt(i) == 'D') {
kodirano_sporocilo += 'A';
} else if (beri.charAt(i) == 'E') {
kodirano_sporocilo += 'D';
}
}
// sestavljeno sporočilo izpišemo
JOptionPane.showMessageDialog(null, "Kodirano sporočilo je: "
+ kodirano_sporocilo);
}
}
Rešitev (C#)
using System;
using System.Collections.Generic;
using System.Text;
namespace KodiranjeSporocila {
class KodiranjeSporocila {
static void Main(string[] args) {
// vhodni podatki
Console.Write("Vnesi besedilo, ki ga želiš zakodirati po skritem postopku (Vnesi le znake od A-E): ");
String beri = Console.ReadLine();
String kodirano_sporocilo = "";
// kodiramo znak za znakom
for (int i = 0; i < beri.Length; ++i) {
if (beri[i] == 'A') {
kodirano_sporocilo += 'E';
} else if (beri[i] == 'B') {
kodirano_sporocilo += 'C';
} else if (beri[i] == 'C') {
kodirano_sporocilo += 'B';
} else if (beri[i] == 'D') {
kodirano_sporocilo += 'A';
} else if (beri[i] == 'E') {
kodirano_sporocilo += 'D';
}
}
// sestavljeno sporočilo izpišemo
Console.WriteLine("Kodirano sporočilo je: " + kodirano_sporocilo);
Console.ReadKey();
}
}
}
Rešitev (Python)
#!C:/Python30/python
#-*-encoding: utf-8 -*-
# -*- coding: latin-1 -*-
'''
Created on 30.6.2009
@author: fajdigap
'''
#vhodni podatki
beri = input("Vnesi besedilo, ki ga zelis zakodirati po skritem postopku (Vnesi le znake od A-E).")
kodirano_sporocilo = ""
#kodiramo znak za znakom
for i in range(len(beri)) :
if beri[i] == 'A':
kodirano_sporocilo =kodirano_sporocilo+ 'E'
elif beri[i] == 'B':
kodirano_sporocilo =kodirano_sporocilo+'C'
elif beri[i] == 'C':
kodirano_sporocilo =kodirano_sporocilo+ 'B'
elif beri[i] == 'D' :
kodirano_sporocilo =kodirano_sporocilo+ 'A'
else :
kodirano_sporocilo =kodirano_sporocilo+ 'D'
#sestavljeno sporočilo izpišemo
print ("Kodirano sporocilo je: ", kodirano_sporocilo)