3Fermer5
SallyLe 17/10/2009 à 15:27
Effectivement c'est possible de faire comme ça. Tu peux faire les conversions avec string_of_int et int_of_string, ensuite tu accèdes au caractère i d'une string s par s.[i] et tu le modifies par s.[i] <- c
pour connaître la longueur d'une chaîne tu as String.length et pour créer une nouvelle chaîne de longueur n String.create n

Par contre si on t'a demandé de faire ça dans le cadre d'un exercice de maths (autrement dit si on te demande pas un résultat mais un algo), tu n'es peut-être pas censé utiliser string_of_int et int_of_string vu que l'essentiel de l'algorithme se trouve dans ces deux fonctions cheeky

Si tu veux le faire à la main sans utiliser les conversions, il faudra effectivement utiliser des modulo & co, je ne vois en effet pas comment y échapper (enfin il y a peut-être une astuce que je ne vois pas, j'ai pas cherché très longuement), par contre une boucle n'est pas forcément le moyen le plus adapté, n'oublie pas qu'on peut faire des fonctions récursives très facilement et que c'est souvent plus simple.

Essaye de poster une idée un peu plus précise que « faire une boucle avec des modulo & co » et on pourra te dire si tu vas dans une bonne direction, si tu peux améliorer et comment, si tu as fait des erreurs... mais là dans le vide je ne peux pas te dire grand-chose de plus ^^

edit (cross) : Sasume > tu réalises que tu appelles "reste" le quotient ? tongue à part ça ta fonction marche, mais oui c'est int -> int qui est demandé, ceci dit on peut partir de ta fonction et chercher à la modifier pour obtenir un résultat entier smile. Je dirais qu'avec peut-être un paramètre en plus ça ne devrait pas être trop compliqué, cependant j'ai l'impression qu'il s'agit d'un exercice scolaire et j'aime pas donner des réponses toutes cuites ^^