숫자 n이 주어지면 숫자의 합이 n으로 나누어지는지 확인해야 합니다. 알아내려면 일의 자리부터 시작하여 모든 숫자를 더한 다음 최종 합계를 해당 숫자로 나누어야 합니다.
예를 들어 숫자 "521"이 있고 그 숫자의 합, 즉 "5 + 2 + 1 = 8"을 찾아야 하지만 521은 8로 나눌 수 없고 나머지도 그렇지 않습니다. 0.
또 다른 예인 "60"은 숫자의 합이 "6 + 0 = 6"이고 6은 60을 나눌 수 있고 나머지는 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
아래에서 사용된 방법은 다음과 같습니다. −
이 문제를 해결하려면 입력에서 각 숫자를 가져와 각 숫자의 합을 계산한 다음 숫자를 나누는지 확인해야 합니다.
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 "
데모
#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; }
위 코드를 실행하면 다음 출력이 생성됩니다 −
No
위 내용은 숫자의 합으로 숫자가 나누어지는지 확인하는 C 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!