[JAVA] Cifrario di Cesare

Stato
Discussione chiusa ad ulteriori risposte.

jkkl

Utente Silver
30 Dicembre 2007
13
5
0
63
Ciao a tutti.
Volevo presentarvi il mio programmino in java sul Cifrario di Cesare (a chiave 1) .
Per chi non sapesse cosa fosse vada qui.

Source:
Codice:
/*
	Cifrario di Cesare by jkkl
*/

import java.util.Scanner;

public class Cesare
{
	public static void main(String[] args)
	{
		String parola;
		Scanner in=new Scanner(System.in); //definiamo lo scanner per l'input
		
		System.out.print("Inserisci la parola da criptare: ");
		parola=in.next(); //input della parola
		
		int conta=parola.length(); //lunghezza parola
		String cifrato="";
		
		for(int i=0; i<conta; i++)
		{
			switch(parola.subString(i,i+1)) //inizio switch
			{
				case "a": cifrato=cifrato+ "b"; break;
				case "b": cifrato=cifrato+ "c"; break;
				case "c": cifrato=cifrato+ "d"; break;
				case "d": cifrato=cifrato+ "e"; break;
				case "e": cifrato=cifrato+ "f"; break;
				case "f": cifrato=cifrato+ "g"; break;
				case "g": cifrato=cifrato+ "h"; break;
				case "h": cifrato=cifrato+ "i"; break;
				case "i": cifrato=cifrato+ "j"; break;
				case "j": cifrato=cifrato+ "k"; break;
				case "k": cifrato=cifrato+ "l"; break;
				case "l": cifrato=cifrato+ "m"; break;
				case "m": cifrato=cifrato+ "n"; break;
				case "n": cifrato=cifrato+ "o"; break;
				case "o": cifrato=cifrato+ "p"; break;
				case "p": cifrato=cifrato+ "q"; break;
				case "q": cifrato=cifrato+ "r"; break;
				case "r": cifrato=cifrato+ "s"; break;
				case "s": cifrato=cifrato+ "t"; break;
				case "t": cifrato=cifrato+ "u"; break;
				case "u": cifrato=cifrato+ "v"; break;
				case "v": cifrato=cifrato+ "w"; break;
				case "w": cifrato=cifrato+ "x"; break;
				case "x": cifrato=cifrato+ "y"; break;
				case "y": cifrato=cifrato+ "z"; break;
				case "z": cifrato=cifrato+ "a"; break;
				case default: System.out.printlln("Errore! Carattere sconosciuto!");break;
			}
		}

		System.out.println("La parola " + parola + " criptata in cifrario di Cesare diventa " + cifrato); //output
	}
}
 
carino ma Il mio scriveva ANche in un file
appena lo trovo te lo passo..... poi non è proprio il massimo con un case
 
si si potrebbe anche fare che scrive su un file.

Il source ha un mese...domani vedo se riesco a trovare un altro metodo senza case che effettivamente non piace neanche a me :asd:
 
Stato
Discussione chiusa ad ulteriori risposte.