分解质因数

#region(提示获取用户输入的数)
int num;
while (true)
{
Console.Write("请输入一个合数(大于1):");
num = int.Parse(Console.ReadLine());
#region 判断number的值是否正确
if (num <= 1)
{
Console.Write("输入错误,输入的数字必须大于1");
}
else
{
bool isFind =false;
for (int i = 2; i < num; i++)
{
if (num % i == 0)
{
isFind = true;
break;
}
}
if (isFind)
{
break;
}
else
{
Console.Write(num + "不是合数,请重新输入");

}
}
#endregion
Console.ReadLine();
Console.Clear();
}
#endregion
#region 保存用户输入
List<int> nums=new List<int>();
int n=num;
while(n!=1)
{
for(int i=2;i<=n;i++)
{
if(n % i == 0)
{

n=n/i;
nums.Add(i);
break;
}

}
}
#endregion
#region 输出
string re=num+"=";
for(int i=0;i<nums.Count;i++)
{
re += nums[i];
if(i<nums.Count-1)
{
re +="x";
}
}
Console.Write(re);
Console.ReadLine();
#endregion

posted @ 2018-04-05 22:48  α不是β  阅读(92)  评论(0编辑  收藏  举报