- using System;
- namespace prime_number
- {
- internal class Program
- {
- /// <summary>
- /// 判断用户输入的是否为一个质数,若是输入q则退出程序!
- /// </summary>
- /// <param name="args"></param>
- private static void Main(string[] args)
- {
- do
- {
- Console.WriteLine("请输入一个正整数(q退出):");
- string imput = Console.ReadLine();
- if (imput != "q") //判断用户是否输入q,不是的继续执行。
- {
- int number;
- if (int.TryParse(imput, out number)) //判断用户输入的是否能够转换为一个整数
- {
- if (number > 0)
- {
- if (PrimeNum(number)) //调用PrimeNum方法判断用户输入的整数是否为质数
- {
- Console.WriteLine("{0}是一个质数!", number);
- }
- else
- {
- Console.WriteLine("{0}不是一个质数!", number);
- }
- }
- else
- {
- Console.WriteLine("您输入的不是一个正数");
- }
- }
- else
- {
- Console.WriteLine("您输入的不是一个整数!");
- }
- }
- else //用户输入q,退出循环。
- {
- break;
- }
- } while (true);
- Console.ReadKey();
- }
- /// <summary>
- /// 判断一个数是否为质数
- /// </summary>
- /// <param name="number">一个整数</param>
- /// <returns></returns>
- private static bool PrimeNum(int number)
- {
- //判断number是否能够被2至number的平方根之间的数整除
- for (int i = 2; i <= Math.Sqrt(number); i++)
- {
- if (number % i == 0)
- {
- return false; //能够整除为非质数
- }
- }
- return true; //不能够整除为质数
- }
- }
- }