glog_td4/questioncomplementaire/Cesar.java
2018-04-01 14:34:28 +02:00

39 lines
896 B
Java

package questioncomplementaire;
public class Cesar extends AlgoCodage{
private int decalage;
private String alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
public Cesar(int decalage){
this.nom = "César";
this.decalage = decalage;
}
@Override
public String toString() {
return "codage de César (décalage=" + decalage + ")";
}
@Override
public String encode(String s) {
String encode = "";
for(int i=0;i<s.length();i++){
encode += alphabet.charAt((decalage +
alphabet.indexOf(s.charAt(i)))%alphabet.length());
}
return encode;
}
@Override
public String decode(String s) {
String decode = "";
int index;
for(int i=0; i<s.length(); i++) {
index = (alphabet.indexOf(s.charAt(i))-decalage) % alphabet.length();
index += (index<0)?alphabet.length():0;
decode += alphabet.charAt(index);
}
return decode;
}
}