Calculer les chiffres d'un nombre.

extracti0n Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   -  
tsri_badr_esgi Messages postés 530 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aimerais savoir comment déconcaténer un nombre ou une méthode pour calculer la somme des chiffres d'un nombre:

ex : 1675 = 1+6+7+5 qui me donnerait : 19
merci

1 réponse

  1. tsri_badr_esgi Messages postés 530 Date d'inscription   Statut Membre Dernière intervention   9
     
    namespace calcul_chiffre_d_un_nombre
    {
        class Program
        {
            static void Main(string[] args)
            {
                 
                int mod,resultat=0,a;
                Console.WriteLine("veuillez entrer un nombre");
                string x = Console.ReadLine();
                if (int.TryParse(x, out a))
                {
                   do
                   {
                       mod = a % 10;
                       a = a / 10;
                       resultat=resultat+ mod;
                   
                   }while(a>0);
                }
    
                else
                {
                    Console.WriteLine("merci d'entrer un nombre valide");
                }
                Console.WriteLine(resultat);
              
    
                
                
            }  
    


    l'idée et d'utiliser les modulo et la devision par 10 avec un type int qui ne support pas les virgule.
    par ex :
    int a=123; int resultat=0;

    avec une boucle while ou do while le programme faire comme suit:

    mod= a%10;.........  ( 123 modulo 10 =3)
    a= a/10; ......( 123 / 10 = 12 )
    resultat =resultat +mod .........(0+3=3)
    puis
    mod= a%10; .........( 12 modulo 10 =2)
    a= a/10;.......... (12 / 10 = 1 )
    resultat =resultat +mod .........(3+2=5)
    puis 
    
    mod= a%10;...........   (1 modulo 10 =1)
    a= a/10;  ........... ( 1 / 10 =0  )
    resultat =resultat +mod  ...........(5+1=6)
    
    0