使用C++数组中所有数字构成一个能被3整除的数是否可行
在这个问题中,我们给定一个数组。我们的任务是检查是否可以使用数组元素的所有数字生成一个能被3整除的数。如果可以,则打印“Yes”,否则打印“No”。
让我们举个例子来理解这个问题
输入 − arr = {3, 5, 91, }
输出 − YES
解释 − 数字 5193 可以被 3 整除。所以,我们的答案是 YES。
为了解决这个问题,我们将检查它是否能被 3 整除。
3 的倍数 − 如果一个数字的各位数字之和可以被 3 整除,则该数字可以被 3 整除。
现在,我们将需要找到所有数组元素的总和。如果这个总和可以被 3 整除,那么就可以打印 YES,否则打印 No。
示例
程序展示了解决方案的实现
#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
广告