c++p1631:数字移位

 

描述 
一个正整数(保证不超过10^7)的个位数字是n,如果把个位数字移到首位,所得到的数是原数的4倍,试编程找出满足条件的最小正整数。
输入格式 
这个正整数的个位数字n(4≤n≤9)。
输出格式 
只有一行,为满足条件的最小正整数。
样例输入 
4
样例输出

102564

代码如下: 

#include <stdio.h>
#include <math.h>

void main()
{
	int n;
	scanf("%d", &n);
	long long i = 10;
	do
	{
		if (i % 10 == n)
		{
			long long num = i / 10;
			long long temp = num;
			int j = 0;
			while (temp)
			{
				j++;
				temp /= 10;
			}

			num = num + n * pow(10, j);
			if (num / i == 4 && num % i == 0)
			{
				printf("%d", i);
				break;
			}	
		}
		i++;
	} while (true);
}