分解质因数

 1       static void Main(string[] args)
 2         {
 3             int s;
 4             while (true)
 5             {
 6                 Console.Write("请输入一个大于1的合数:");
 7                  s = int.Parse(Console.ReadLine());
 8                 if (s <= 1)
 9                 {
10                     Console.Write("输入有误,请请按Enter键继续:");
11                 }
12                 //判断是否为合数,否为退出清屏,再输入
13                 else
14                 {
15                     bool a = false;
16                     for (int i = 2; i < s; i++)
17                     {
18                         if (s % i == 0)
19                         {
20                             a = true;
21                             break;
22                         }
23                     }
24                     if (a)
25                     {
26                         break;
27                     }
28                     else
29                     {
30                         Console.WriteLine("您输入的数不是合数,请按Enter键继续");
31                     }
32                 }
33                 Console.ReadLine();
34                 Console.Clear();
35             }
36             //把能整除合数的最小质数放入集合
37                     int g = s;
38                     List<int> nums = new List<int>();
39 
40                     while (g != 1)
41                     {
42                         for (int i = 2; i <= g; i++)
43                         {
44                             if (g % i == 0)
45                             {
46                                 g = g / i;
47                                 nums.Add(i);
48                                 break;
49                             }
50                         }
51                     }
52                     //输出
53                     string result = s + "=";
54                     for (int i = 0; i < nums.Count; i++)
55                     {
56                         result += nums[i];
57                         if (i < nums.Count - 1)
58                         {
59                             result += "x";
60                         }
61                     }
62                     Console.WriteLine(result);
63                     Console.ReadLine();
64 
65                 }

 

 

posted @ 2018-10-31 00:18  暮雪上的晨星  阅读(267)  评论(0编辑  收藏  举报