이 문제에서는 배열이 제공됩니다. 우리의 임무는 배열 요소의 모든 자릿수를 사용하여 생성된 숫자가 3으로 나누어 떨어지는지 확인하는 것입니다. 가능하면 “Yes”를 인쇄하십시오. 그렇지 않으면 "아니오"를 인쇄하십시오. .
문제를 이해하기 위해 예를 들어보겠습니다.
입력 - arr ={3, 5, 91, }
출력 − 예
설명 − 숫자 5193은 3의 배수입니다. 따라서 우리의 대답은 YES입니다.
이 문제를 해결하기 위해 3으로 나누어지는지 확인합니다.
3의 배수 - 숫자의 합이 3의 배수이면 3의 배수입니다.
이제 모든 배열 요소의 합을 찾아야 합니다. 이 합계가 3으로 나누어 떨어지면 YES를 인쇄할 수 있습니다. 그렇지 않으면 아니요.
예시
솔루션 구현을 보여주는 프로그램
#include <iostream> using namespace std; bool is3DivisibleArray(int arr[]) { int n = sizeof(arr) / sizeof(arr[0]); int rem = 0; for (int i=0; i<n; i++) rem = (rem + arr[i]) % 3; return (rem == 0); } int main(){ int arr[] = { 23, 64, 87, 12, 9 }; cout<<"Creating a number from digits of array which is divisible by 3 "; is3DivisibleArray(arr)?cout<<"is Possible":cout<<"is not Possible"; return 0; }
출력
Creating a number from digits of array which is divisible by 3 is Possible