/* Inversion d'une chaine de caracteres */ public class InversionChaineMethodeDichotomique { ///////////////////////////////////////////////// /* Fonction de calcul et retour de l'inverse */ /* d'une chaine de caracteres */ /* st : la chaine de carateres à inverser */ static String inversionChaine(String st) { String s; String s1; String s2; int l1; int lst = st.length(); if ( ( lst == 0 ) || ( lst == 1 ) ) { s = st; } else { l1 = lst/2; s1 = inversionChaine(st.substring(0,l1)); s2 = inversionChaine(st.substring(l1,lst)); s = s2+s1; } return s; } ///////////////////////////////////////////////// /* Programme principal */ public static void main(String [] args) { String st; String sti; Ecran.afficher("Chaine a inverser ? "); st = Clavier.saisirString(); sti = inversionChaine(st); Ecran.afficherln("Chaine inversée : ",sti); } }