using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
while(true)//while循环中保证一次操作后不会退出
{
Console.Write("请输入一个合数(大于1):");
int num = int.Parse(Console.ReadLine());
if(num <= 1)
{
Console.WriteLine("输入错误,该数必须大于1");
}
else
{
bool flag = false;//true合数 false质数
for (int i = 2; i < num; i++)
{
if(num % i == 0)//能被当前数之前到2之间的数整除的则是合数
{
flag = true;
break;//一旦确定是合数则退出循环
}
}
if (flag)//合数则进入该条件
{
string result = num + "=";
List<int> numList = new List<int> {};
int n = num;
while(n != 1)
{
for (int i = 2; i <= n; i++)
{
if(n % i == 0)
{
n = n / i;
numList.Add(i);//能够整除当前数的最小数为质数,加入集合
break;
}
}
}
for (int i = 0; i < numList.Count; i++)
{
if (i == (numList.Count - 1))
{
result += numList[i];
}
else
{
result += numList[i] + "*";
}
}
Console.Write(result);
}
else//质数进入该条件
{
Console.WriteLine("输入错误,该数必须是合数");
}
}
Console.ReadLine();
Console.Clear();
}
Console.ReadLine();
}
}
}