É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.
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
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.
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 "
Démonstration
#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; }
Si vous exécutez le code ci-dessus, la sortie suivante sera générée −
No
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!