Codage rotationnel avec une clé modulo 26

Contenu du snippet

le code est pour faire chiffrage d'un string avec une clé rotationnelle en modulo 26
on fait une rotation des lettres de l'alphabet avec la clé spécifiée

Source / Exemple :


package javafr;

import java.lang.*;

/**
 *

  • @author scupper
  • @since 13:45 March 23rd 2011
*
  • /
public class CodeCesar { private static int CESAR_KEY = 4; public CodeCesar(){ } public CodeCesar(int key){ setKey(key); } public int getKey(){ return this.CESAR_KEY; } public void setKey(int key){ this.CESAR_KEY=key; } public StringBuffer cypher(StringBuffer str,int key){ StringBuffer s = new StringBuffer(); int nKey = 0; char c ; //correction de la clé en modulo 26 nKey =key % 26; setKey(nKey); StringBuffer nStr=new StringBuffer(str.toString().toUpperCase()); for(int i =0;i<nStr.length();i++){ c = nStr.charAt(i); int code = (char)(((int)c-65+nKey)%26 + 65); s.append((char)code); } return s; } public static void main(String[] args){ CodeCesar obj = new CodeCesar(); System.out.println(obj.cypher( new StringBuffer("Hossame"), 5)); } }

Conclusion :


run:
YJXYNSYMNXYJCY
BUILD SUCCESSFUL (total time: 1 second)

A voir également