黑马程序员技术交流社区
标题:
求一个判断素数(质数)的方法
[打印本页]
作者:
刘安成
时间:
2013-12-16 14:30
标题:
求一个判断素数(质数)的方法
本帖最后由 刘安成 于 2013-12-16 18:22 编辑
求一个判断素数(质数)的方法
作者:
鸡蛋壳
时间:
2013-12-16 15:16
代码如下 复制代码
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入一个数:");//默认只许输入“q”或者输入大于1的整数
string numberString = Console.ReadLine();
while (numberString != "q")
{
int numberInt = Convert.ToInt32(numberString );
bool result = PanDuan (numberInt );
if (result == true)
Console.WriteLine("{0}是质数", numberInt);
else
Console.WriteLine("{0}不是质数",numberInt );
Console.WriteLine("请输入一个数:");
numberString = Console.ReadLine();
}
Console.WriteLine("操作结束!!!");
Console.ReadKey();
}
public static bool PanDuan(int number)
{
bool result=true;
for (int i = 2; i < number; i++)
{
if (number == 2)
{
result = true;
break;
}
else if (number % i == 0)
{
result = false;
break;//break好像可以用,但是总是提示“检测到无法访问的代码”,这里一定不严谨
}
else
{
result = true;
break;
}
}
return result;
}
}
作者:
雨中恋人
时间:
2013-12-16 16:01
// 找出100内所有的素数
//素数就是质数 只能被1和本身整除的数字
//外层循环负责遍历2-100之间所有的数字
for (int i = 2; i <= 100; i++)
{
bool b = true;
for (int j = 2; j <= i - 1; j++)
{
//让当前循环到的数字从2开始取余,一直到当前循环到的这个数字-1
if (i % j == 0)
{
b = false;
//如果当前循环到的数字不是质数 那么跳出当前循环
break;
}
}
if (b)
{
Console.WriteLine(i);
}
}
Console.ReadKey();
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2