标题:代码出现怪事 素数显示6次
只看楼主
达文西
Rank: 1
等 级:新手上路
威 望:1
帖 子:117
专家分:0
注 册:2007-8-4
 问题点数:0 回复次数:6 
代码出现怪事 素数显示6次

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication43
{
class Program
{

public static void Main()
{
int i;
bool x=true;
for (i = 100; i <= 200; i++)
{
for (int j = 2; j <=Convert.ToInt32( Math.Sqrt(i)); j++)
{
if (i % j == 0)
{
x = false;
break;

}

if (x = true)
Console.WriteLine(i);

}


Console.ReadLine();

}
}
}
}
你们看看 比如显示101 101 就出现六次 每个素数都是显示6次 而且必须按enter才显示下一个素数 无限郁闷中


搜索更多相关主题的帖子: 素数 怪事 代码 
2007-08-21 16:26
达文西
Rank: 1
等 级:新手上路
威 望:1
帖 子:117
专家分:0
注 册:2007-8-4
得分:0 
不是六次 是9次  
2007-08-21 16:28
zhanmu123456
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-8-30
得分:0 

if (x = true)
Console.WriteLine(i);
break;
}


//Console.ReadLine();

2007-08-30 16:46
virusswb
Rank: 1
等 级:新手上路
威 望:1
帖 子:342
专家分:0
注 册:2005-8-6
得分:0 

public static void Main()
{
int i;

for (i = 100; i <= 200; i++)
{
for (int j = 2; j < Convert.ToInt32(Math.Sqrt(i)); j++)
{
if (i % j == 0)
{

break;

}
Console.WriteLine(i);
break;//这个break很重要吗,你不break就会继续下一次的判断,不是素数就要退出
}

}
Console.ReadLine();//要注意位置
}


jorden008@
2007-08-30 17:24
guoxhvip
Rank: 8Rank: 8
来 自:聖西羅南看臺
等 级:贵宾
威 望:44
帖 子:4052
专家分:135
注 册:2006-10-8
得分:0 

using System;

namespace is_prime_number
{
class PrimeNumber
{
public static void Main()
{
int num,i;
Console.Write("请输入一个正整数:");
num = int.Parse(Console.ReadLine());
i = 2;
while( num % i != 0)
{
if( num == 1)
{
break;
}
i++;
}
if( num == i || num == 1)
{
Console.WriteLine( num + "是素数");
}
else
{
Console.WriteLine( num + "不是素数");
}
}
}
}


愛生活 && 愛編程
2007-08-31 00:40
xyb157
Rank: 1
等 级:新手上路
帖 子:148
专家分:0
注 册:2006-11-21
得分:0 
以下是引用guoxhvip在2007-8-31 0:40:14的发言:

using System;

namespace is_prime_number
{
class PrimeNumber
{
public static void Main()
{
int num,i;
Console.Write("请输入一个正整数:");
num = int.Parse(Console.ReadLine());
i = 2;
while( num % i != 0)
{
if( num == 1)
{
break;
}
i++;
}
if( num == i || num == 1)
{
Console.WriteLine( num + "是素数");
}
else
{
Console.WriteLine( num + "不是素数");
}
}
}
}

按你这样的方法好象不能判断全部的素数啊!有点误判,你只考虑基数可是基数也有的是素数,若当num等于75的时候代码好象就会判断为素数,可是他不是,所以还要考虑到以5做为除数,不知道是不是呢?
我是新手都都指教


编程、在编程。。。。。爱学习、爱劳动才是个好孩子,老婆才会好好爱我
2007-08-31 17:30
guoxhvip
Rank: 8Rank: 8
来 自:聖西羅南看臺
等 级:贵宾
威 望:44
帖 子:4052
专家分:135
注 册:2006-10-8
得分:0 
楼上的朋友 不要光看代码 如果你觉得这段代码num等于75时会判断为素数那你运行一下再说 你看看输入75判断的是素数还是不是素数

愛生活 && 愛編程
2007-08-31 18:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-164370-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.087552 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved