/*************************************************************
*  源程序名：SynTask4_4_1.cpp                  　　　　　    *
*  功能：输出1~100之间各位数的乘积大于各位数的和的数，       *
*        并控制每行输出8个数。　　　　　                     *
**************************************************************/
#include <iostream.h>
void main()
{
	int sum=0,p=1,count=1;//sum和n分别存放某个数的各位上数的和与积，count用来控制每行输出4个数。
	int n,m;//m用作n的副本，因为取每位上数的时候，会破坏n的值，即改变n的值
	for (n=1;n<=100;n++)
	{
		m=n;//m作为n的副本
		sum=0;p=1;//对1到100间每个值进行判断时，都要重新赋值，否则是在上一个结果之上操作的。
		while (m!=0)//辗转相除法
		{
			sum+=m%10;//累加各位上数的和
			p*=m%10;//累加各位上数的积
			m=m/10;
		}
		if (p>sum)//满足条件，输出
		{
			if(count%8!=0)//控制每4个占一行
				cout<<n<<'\t';
			else
				cout<<n<<endl;
			count++;//计数
		}
	}
	cout<<endl;
}