Dans ce programme, nous définissons une classe Rot13 avec une méthode statique encode() qui prend en entrée une chaîne de caractères et retourne une chaîne de caractères chiffrée. La méthode encode() convertit la chaîne d'entrée en un tableau de caractères et parcourt ce tableau pour chiffrer chaque caractère. Si le caractère est une lettre minuscules, nous l'ajoutons 13 pour effectuer la rotation et prenons le modulo 26 pour maintenir la taille de l'alphabet. Si le caractère est une lettre majuscule, nous effectuons le même traitement. Dans la méthode main(), nous créons un exemple de chaîne de caractères et l'affichons, ainsi que sa version chiffrée en appelant la méthode encode(). La sortie de ce programme sera la suivante : Texte original : Bonjour, comment vas-tu? Texte chiffré : Obqrour, nyrinyng jnl-gb? class Rot13 { public static String encode(String input) { char[] chars = input.toCharArray(); for (int i = 0; i < chars.length; i++) { char c = chars[i]; if (c >= 'a' && c <= 'z') { c = (char) ((c - 'a' + 13) % 26 + 'a'); } else if (c >= 'A' && c <= 'Z') { c = (char) ((c - 'A' + 13) % 26 + 'A'); } chars[i] = c; } return new String(chars); } } public class Main { public static void main(String[] args) { String input = "Bonjour, comment vas-tu?"; System.out.println("Texte original : " + input); System.out.println("Texte chiffré : " + Rot13.encode(input)); } }