
题目背景
本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。
题目描述
将1,2,…,9 共 9 个数分成 3 组,分别组成 3 个三位数,且使这 3 个三位数构成 1:2:3 的比例,试求出所有满足条件的 3 个三位数。
输入格式
无
输出格式
若干行,每行 3 个数字。按照每行第 1 个数字升序排列。
输入输出样例
输入格式
无
输出格式
192 384 576 * * * ... * * * (剩余部分不予展示)
参考代码:
#include<iostream>
using namespace std;
int main()
{ int x,y,i;//分别定义3个三位数
for(i=123;i<=333;i++)//进入for循环
{//构造1:2:3的比例关系
x=i*2;//第一个数✖️2=第二个数
y=i*3;//第一个数✖️3=第三个数
if((i/100+i/10%10+i%10+x/100+x/10%10+x%10+y/100+y/10%10+y%10==1+2+3+4+5+6+7+8+9)&&((i/100)*(i/10%10)*(i%10)*(x/100)*(x/10%10)*(x%10)*(y/100)*(y/10%10)*(y%10)==(1*2*3*4*5*6*7*8*9)))
//用if条件语句判断是否符合要求,符合后输出结果
条件:当i,x,y的个位十位百位数字相加之和为1~9九个数字之和 且 i,x,y的个位十位百位数字相乘之积为1~9九个数字之积
n的百位数:c=n/100 n的十位数:b=n/10%10 n的个位数:a=n%10
{
cout<<i<<" "<<x<<" "<<y<<endl;//按升序输出结果
}
}
return 0;
}