object Main3 extends App {
var i = 0;
var j = 0;
val litery = ('A' to 'Z').toArray;
var rozmiarTablicy : Int = litery.size;
var tablica = Array.ofDim[Char](rozmiarTablicy, rozmiarTablicy);
while (i < rozmiarTablicy) {
j = 0;
while (j < rozmiarTablicy) {
tablica(i)(j) = litery((i + j) % rozmiarTablicy);
j +=1;
}
i += 1;
}
/*
// WYPISYWANIE TABLICY SZYFRUJĄCEJ
i = 0;
j = 0;
while (i < rozmiarTablicy) {
while (j < rozmiarTablicy) {
print(tablica(i)(j)+" ");
j += 1;
}
print("\n");
i += 1;
}
*/
print("Wpisz haslo do zaszyfrowania (WIELKIMI LITERAMI): ");
var napis : String = io.StdIn.readLine();
print("Wpisz klucz (WIELKIMI LITERAMI): ");
var klucz : String = io.StdIn.readLine();
var dlugosc : Int = napis.length;
var dlugoscKlucza : Int = klucz.length;
var bezSpacji : String = "";
i = 0;
while (i < dlugosc) {
if (napis(i) != ' ') {
bezSpacji += napis(i);
}
i += 1;
}
dlugosc = bezSpacji.length;
i = 0;
while (klucz.length < dlugosc) {
klucz += klucz(i % dlugoscKlucza);
i += 1;
}
var zaszyfrowane : String = "";
i = 0;
while (i < dlugosc) {
var wiersz : Int = 0;
while (bezSpacji(i) != tablica(wiersz)(0))
wiersz += 1;
var kolumna : Int = 0;
while (klucz(i) != tablica(0)(kolumna))
kolumna += 1;
zaszyfrowane += tablica(wiersz)(kolumna);
i += 1;
}
print("\n\n\n")
println("Do zaszyfrowania: " + bezSpacji);
println("Klucz: " + klucz);
println("Zaszyfrowane hasło: " + zaszyfrowane);
print("\n\n");
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}