CALCUL D'UNE RACINE NUMÉRIQUE

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 17 avril 2011 à 20:32
pgl10 Messages postés 380 Date d'inscription samedi 18 décembre 2004 Statut Membre Dernière intervention 29 octobre 2023 - 17 avril 2011 à 21:03
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/53068-calcul-d-une-racine-numerique

pgl10 Messages postés 380 Date d'inscription samedi 18 décembre 2004 Statut Membre Dernière intervention 29 octobre 2023 11
17 avril 2011 à 21:03
Brunews : remarque très juste. Mais on peut aussi le modifier pour d'autres calculs. Et j'ajoute que si le nombre est disponible sous la forme d'une chaine de caractères, on peut faire le calcul avec :
int rnum(const char *str) {
char buf[32];
int s = 0;
for(int i 0; isdigit(str[i]); i++) s s + str[i] - '0';
if(s < 10) return s;
sprintf(buf, "%d", s);
return rnum(buf);
}
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 avril 2011 à 20:32
int ranum(const int n) {
return 1 + ((n - 1) % 9);
}

Tu es certain que ça justifiait une source ???
Rejoignez-nous