Maison > développement back-end > C++ > Programme C pour vérifier si un nombre est divisible par la somme de ses chiffres

Programme C pour vérifier si un nombre est divisible par la somme de ses chiffres

王林
Libérer: 2023-08-30 16:05:08
avant
1657 Les gens l'ont consulté

Programme C pour vérifier si un nombre est divisible par la somme de ses chiffres

Étant donné un nombre n, nous devons vérifier si la somme de ses chiffres est divisible par n. Pour le savoir, nous devons additionner tous les nombres en commençant par le chiffre des unités, puis diviser la somme finale par ce nombre.

Par exemple, nous avons un nombre "521", et nous devons trouver la somme de ses chiffres, c'est-à-dire "5 + 2 + 1 = 8", mais 521 ne peut pas être divisible par 8, et le reste ne l'est pas. 0.

Autre exemple, "60", la somme de ses chiffres est "6 + 0 = 6", 6 peut diviser 60, et le reste est 0.

Exemple

1

2

3

4

5

6

Input: 55

Output: No

Explanation: 5+5 = 10; 55 not divisible by 10

Input: 12

Output: Yes

Explanation: 1+2 = 3; 12 is divisible by 3

Copier après la connexion

La méthode utilisée ci-dessous est la suivante :

Pour résoudre ce problème, nous devons obtenir chaque nombre de l'entrée et calculer la somme de chaque nombre, puis vérifier s'il divise le nombre.

  • Obtenez l'entrée
  • Obtenez chaque nombre à partir du chiffre des unités et ajoutez-le à une variable de somme avec une valeur initiale de zéro
  • Divisez l'entrée par la somme des nombres
  • Renvoyez le résultat

Algorithme

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

In function int isDivisible(long int num)

   Step 1-> Declare and initialize temp = num, sum = 0

   Step 2-> Loop While num

      Declare and initialize k as num % 10

   Set sum as sum + k

      Set num as num / 10

   End Loop

   Step 3-> If temp % sum == 0 then,

      Return 1

   Step 4-> Return 0

      End function

In main()

   Step 1-> Declare and initialize num as 55

   Step 2-> If isDivisible(num) then,

      Print "yes "

   Step 3-> Else

Print "no "

Copier après la connexion

Exemple

Démonstration

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

#include <stdio.h>

// This function will check

// whether the given number is divisible

// by sum of its digits

int isDivisible(long int num) {

   long int temp = num;

   // Find sum of digits

   int sum = 0;

   while (num) {

      int k = num % 10;

      sum = sum + k;

      num = num / 10;

   }

   // check if sum of digits divides num

   if (temp % sum == 0)

      return 1;

      return 0;

}

int main() {

   long int num = 55;

   if(isDivisible(num))

      printf("yes</p><p>");

   else

      printf("no</p><p>");

      return 0;

}

Copier après la connexion

Sortie

Si vous exécutez le code ci-dessus, la sortie suivante sera générée −

1

 

Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal