在一种室内互动游戏中,魔术师要每位观众心里想一个3位数abc(a、b、c分别是百位、十位和个位数字),然后魔术师让观众心中记下acb、bac、bca、cab、cba五个数以及这五个数的和值。只要观众说出这个和是多少,则魔术师一定能猜出观众心里想的原数abc是多少。例如观众甲说他计算的和值是1999,则魔术师立即说出他想的数是443,而观众乙说他计算的和值是1998,则魔术师说:“你算错了!”。请编程模拟这个数字魔术游戏。
#include<stdio.h>
int Getx(int m)
{
int a,b,c,x;
x=100;
do
{
a=x/100;
b=(x-a*100)/10;
c=x%10;
if(222*(a+b+c)-x==m)
{
return x;
}
x++;
}
while(x<1000);
return 1;
}
int main()
{
int m,x;
printf("输入五个数的和:");
scanf("%d",&m);
x=Getx(m);
if(x==1)
{
printf("error!");
}
else
{
printf("%d",x);
}
}