最接近的有趣的数

题目描述
果果发现了一个有趣的数学规律:如果将一个数字各个位上的数相加,和能被3整除,那么原数字也能被3整除。
那果果想,如果一个数字各个位上的数字和,能被4整除,也一定很有趣。
果果规定:如果一个数字各个位上数字的和能被4整除,且原数字能被3整除,那么这个数字就是一个有趣的数字。

现在,给出一个数字a,请你帮果果找到一个最接近a的正整数x,使得x是一个有趣的数。如果x有很多,请输出较大的一个。

输入格式
输入只有一个数字a。
0 < a < 1000

输出格式
一个正整数x

样例输入
432

样例输出
435

#include<iostream>
using namespace std;
bool check(int x){
    
    
	int sum=0;
	while(x){
    
    
		sum+=x%10;
		x/=10;
	}
	return (sum%12==0);
}
int main(){
    
    
	int n,ans;
	cin>>n;
	for(int i=0;true;i++){
    
    
		int t=n+i;
		if(check(t)){
    
    
			ans=t;
			break;
		}
		t=n-i;
		if(t>0&&check(t)){
    
    
			ans=t;
			break;
		}
	}
	cout<<ans<<endl;
	return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_51794965/article/details/110232338