dum | žák

Programování C#

Název školy Vyšší odborná škola obalové techniky a Střední škola, Štětí, příspěvková organizace
Adresa školky Kostelní 134, 411 08 Štětí
46773509
Název operačního programu OP Vzdělávání pro konkurenceschopnost
Registrační číslo CZ.1.07/1.5.00/34.1006
Označení vzdělávacího materiálu
Název tématické oblasti (sady) Programování
Název materiálu Caesarova šifra
Anotace
Autor Jazyk
Očekávaný výstup
Klíčová slova
Druh výukového zdroje Věková skupina žáků
Typ interakce Ročník
Speciální vzdělávací potřeby žádné
Zhotoveno, (datum/období) Celková velikost

pdf icon
Caesarova šifra

Obsah

class Program
{
	public static string abeceda = "aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž ,.:?!";
	public static int klic = 3;
 
	public static void Main(string[] args)
	{
 
		string sifra = Sifruj("ahoj světe");
		Console.WriteLine(sifra);
 
		string text = DeSifruj("cjqm");
		Console.WriteLine(text);
 
		Console.ReadKey(true);
	}
 
	public static string Sifruj(string text) {
		string sifra = "";
 
		int pozice;
		for (int i = 0; i < text.Length; i++) {
			pozice = abeceda.IndexOf(text[i]);
			if (pozice == -1) {
				Console.WriteLine("Znak " + text[i] + " není v abecedě!");
			}
			pozice = pozice + klic;
			if (pozice >= abeceda.Length) {
				pozice = pozice - abeceda.Length;
			}
			sifra = sifra + abeceda[pozice];
		}
 
		return sifra;
	}
 
	public static string DeSifruj(string sifra) {
		string text = "";
 
		int pozice;
		for (int i = 0; i < sifra.Length; i++) {
			pozice = abeceda.IndexOf(sifra[i]);
			if (pozice == -1) {
				Console.WriteLine("Znak " + sifra[i] + " není v abecedě!");
			}
			pozice = pozice - klic;
			if (pozice < 0) {
				pozice = pozice + abeceda.Length;
			}
			text = text + abeceda[pozice];
		}
 
		return text;
	}
}