vb求孪生素数猜想和降序素数

共有 1997 人关注过本帖
标题:求助,孪生素数问题
来 自:广东广州
等 级:论坛游民
帖 子:105
专家分:77
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:6&&&
求助,孪生素数问题
题目:孪生素数是指两个相差为2 的素数。例如3 和5,5 和7,11 和13 等。编写程序输出m 对(m 由键盘输入)孪生素数。要求设计函数prime 用于判断某整数是否素数。
下面是我编的代码:
#include&stdio.h&
#include&math.h&
&&& main()
&&& int m,j,l,n;&&&&&&&&&&&&&&&&&/*定义变量*/
&&& int prime(int n);&&&&&&&&&/*函数的声明*/
&&& printf(&Please input the numbers:&);&&&/*提示输入*/
&&& scanf(&%d&,&m);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&& for(j=0,l=2;j&=m;j++,l++)&&&&&&&&&&&&&&/*利用循环输出所需的对数*/
&&&&&&&&if(prime(l+2)==prime(l)+2)&&&&&&&&&&&/*判断是否符合孪生对数的条件*/
&&&&&&&&&&&&printf(&%d=%d+2\n&,l+2,l);&&&/*输出结果*/
&&& getch();&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/*WINTC需要这一个*/
&&& int prime(int n)&&&&&&&&&&&&&&&&&&&&&&&&/*需要调用的函数*/
&&& int k,i;&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/*定义变量*/
&&& for(;n&=100000;n++)&&&&&&&&&&&& /*利用循环,找出指定范围内的素数*/
&&&&&&&&if(n!=2&&n%2==0)&&/*排队除2以外的偶数*/
&&&&&&&&k=sqrt(n);
&&&&&&&&for(i=2;i&k;i++)
&&&&&&&&&&&&if(n%i==0)
&&&&&&&&if(i&=k)&&return(n);&&&&&&&&&&&&&&/*如果N是素数,即返回N的值*/
可是我的这一段代码输出的结果中包含不是素数的,不知道问题出在哪。
请问各位前辈,我这一段代码问题出在哪?谢谢
搜索更多相关主题的帖子:
等 级:贵宾
威 望:29
帖 子:1164
专家分:3536
回复 楼主 折翼
可能是判断素数的函数有问题
这个给你参考一下程序代码:
//判断一个数是否是素数。是返回1,否则返回0
int prime(int n)
&&& for(i = <font color=#;i &i++)
&&&&&&&&if(n % i == <font color=#)
&&&&&&&&&&&&return <font color=#;
&&& return <font color=#;
[ 本帖最后由 南国利剑 于
00:27 编辑 ]
来 自:广东广州
等 级:论坛游民
帖 子:105
专家分:77
这个貌似不能解决问题
来 自:广东广州
等 级:论坛游民
帖 子:105
专家分:77
没有其他前辈帮忙看一下吗?
等 级:新手上路
prime函数写错了,我感觉lz思路一点也不清晰,prime俩面无缘无故的加循环,没有学过筛法计算素数吗?
来 自:广东广州
等 级:论坛游民
帖 子:105
专家分:77
以下是引用pragma在 22:38:49的发言:
prime函数写错了,我感觉lz思路一点也不清晰,prime俩面无缘无故的加循环,没有学过筛法计算素数吗?prime函数哪里出问题了?
等 级:论坛游民
专家分:12
程序代码:#include &stdio.h&
#include &stdlib.h&
int main()
&&& int i,j,k;
&&& int count,count2;
&&& printf(&请输入你要选择的范围\n&);
&&& scanf(&%d&,&m);
&&& for(i=<font color=#;i&m;i++)
&&&&&&&&count=<font color=#;
&&&&&&&&count2=<font color=#;
&&&&&&&&for(j=<font color=#;j&m;j++)
&&&&&&&&&&&&for(k=<font color=#;k&m;k++)
&&&&&&&&&&&&{
&&&&&&&&&&&&&&& if(i==j*k)
&&&&&&&&&&&&&&&&&&&&count++;
&&&&&&&&&&&&&&& if((i+<font color=#)==j*k)
&&&&&&&&&&&&&&&&&&&&count2++;
&&&&&&&&&&&&}
&&&&&&&&if(count==<font color=#&&count2==<font color=#)
&&&&&&&&&&&&printf(&%d %d\n&,i,i+<font color=#);
版权所有,并保留所有权利。
Powered by , Processed in 0.028903 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved求100以内的孪生素数_百度知道
求100以内的孪生素数
建个按钮控件Private Function isprime(i) As BooleanFor j = 2 To i - 1If i Mod j = 0 ThenExit For &#39;当i有可以整除的因子时(即i不是素数时),跳出内层循环,判断下一个数End IfNext jIf j = i Thenisprime = True &#39;当循环进行到最后 也没跳出时 即i没有可以整除的因子时(即i是素数时),输出iEnd IfEnd FunctionPrivate Sub Command1_Click()For i = 1 To 100If isprime(i) And isprime(i + 2) ThenP i + 2End IfNextEnd Sub
其他类似问题
为您推荐:
创建一个文本框和按钮,文本框属性MultiLine为ture
Private Sub Command1_Click()
Dim m, n, q(25), i As Integer
Dim Num As Integer
For m = 1 To 100
For n = 1 To m
If 0 = m Mod n And n && m Then &#039;即除了自己和1外 还有 其他数能被整除
If 0 = m Mod n And n = m Then &#039;&#039;即除了自己和1外 没有 其他数能被整除
q(i) = m &#039;记录下来
Dim j, j2 As Integer
For j = 1 To 25
For j2 = 1 To j
If q(j) - q(j2) = 2 Then &#039;对比
Num = Num + 1
Text1.Text = Text1.Text & q(j) & & 和 & & q(...
孪生素数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁C语言编程。。孪生素数_百度知道
C语言编程。。孪生素数
#include&stdio.h&int main(){
int a,b,i,j,k,s=0;
scanf(&%d %d&,&a,&b);
for(i=a;i&=b;i++)
{ for(j=2;j&b;j++)
{if(i%j==0) { s=1;}}
{if(s==0) for(k=2;k&b;k++)
if((i+2)%k==0){s=1;}}
&#47;&#47;这里给s赋初值0
if(s==0) printf(&%d %d&#92;n&,i,i+2);
return 0;}&#47;&#47;但你的代码不完全。只输出了最大的孪生素数,前面的没有输出
其他类似问题
为您推荐:
提问者采纳
&/zhidao/wh%3D450%2C600/sign=2cf2e94e74c6a7efb973a022c8caf21fbe096b633dc712c10e338744eaf8ac41;&&&&)&&&j&&i=a;&j=2;&j++&&&&nbsp://d;&0;=&a;j++&&&&&}二,b;&&&&&&i+2&&&&&&;&sqrt(&&&&&&%d&int&&=&&nbsp,&&&&&&&&=k;&&&&int&&&/*&&)&i++&&&&i%j&&);&&&&0&&&&&/*&&&&&&&&&&&&&&&&=k;&{&&&素数标志&&&&%d&=&*/&{&&&nbsp.&&if(&&&&nbsp,j;&s&&&s、用GCC编译测试结果;&&&&&&&s&&if(&&&&&&&&}&{&nbsp.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="&&&/*&&&i不是素数&1;for(&0&s&sqrt(i),&&*/&&&main(){&nbsp,&}&&&&&printf(&&&&}&&&)&int&i+2&&&k&&i+2是素数&&&&{&&nbsp,&&&/zhidao/pic/item/0b46f21fbe096b633dc712c10e338744eaf8ac41;i;{&nbsp,k;&);*/&)&nbsp.h&&&nbsp.&&&&&=&nbsp.jpg" esrc="先假设i是素数&nbsp.&&&&&&&}&&&&&}&&for(&s&&&&&&/zhidao/wh%3D600%2C800/sign=50b592b5da27a0df5afe/0b46f21fbe096b633dc712c10e338744eaf8ac41:<a href="&&&&++;&&&if(&&k&&&nbsp,%d]\n&&&0;&&&);&if(&&&&&&nbsp.&nbsp://d;&&&&&&&nbsp,&(i+2)%j&&&&&j=2;&&num=0;&&&s&&&输入的两个数据范围&&*/&/*&&&&nbsp:#include&&)&b&&&i+2&&}&)&&素数个数;&&&&nbsp://d;0;&&&&第%d个孪生素数[%d;i+2不是素数&&*/&&&nbsp.&&&&&&=b;&&nbsp楼主的两个for循环用的不对;&for(&&&&&{&&)&&&&&&&&&&j&&&&&&&&int&nbsp.&&&&&i;&&&nbsp,&&&==&&scanf(&&&&&&&&&nbsp。改正的代码如下;&&/*&=&#include&return&&&&nbsp,&==&nbsp.h&/*&&&}&&{&nbsp,另外整个流程也是有问题的;&&&&&&*/&&&&&nbsp
提问者评价
孪生素数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁VB编程,新手问题,求a~b范围内孪生素数(只两个差值为2的素数),并输出_百度知道
VB编程,新手问题,求a~b范围内孪生素数(只两个差值为2的素数),并输出
Option ExplicitPrivate Function judge(n As Integer) As Boolean& & Dim i As Integer& & For i = 2 To n - 1& & & & If n Mod i = 0 Then Exit Function& & Next i& & judge = True& &&End FunctionPrivate Sub Command1_Click()& & Dim a As Integer, b As Integer, i As Integer, n As Integer& & a = Val(Text1.Text)& & b = Val(Text2.Text)&nbsp供恭垛枷艹磺讹委番莲; & If a = 1 Or 2 Then& & & & i = 3& & Else& & & & i = a& & & & For n = i To b - 2& & & & & & If judge(n) = True And judge(n + 2) = True Then& & & & & & & & List1.AddItem (n & &和& & n + 2 & &是孪生素数&)& & & & & & End If& & & & Next n& & End If& &End SubPrivate Sub Command2_Click()& & Text1 = &&& & Text2 = &&& & List1.Clear& & Text1.SetFocusEnd Sub哪里不对?
清空多打了一个&#39;,忽略不计
提问者采纳
for应该在IF的供恭垛枷艹磺讹委番莲外边就是把END IF放到FOR语句上面看你写代码的情况,不应该出现这种错误啊。。
提问者评价
其他类似问题
为您推荐:
孪生素数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁求VB代码:若两个素数之差为2,则这两个素数就是一对孪生素数。编写程序找出1~100之间所有的孪生素数。_百度知道
求VB代码:若两个素数之差为2,则这两个素数就是一对孪生素数。编写程序找出1~100之间所有的孪生素数。
例如:3和5,5和7,11和13
提问者采纳
&&&2&&Mod&&#39;i&&&n&&&&&&&&&=&nbsp,故步长为2&&#39;&&&&&&&-&If&panduan(i)&如果当前i为素数&&0&Then&&&&&100&&End&=&判断n是否为素数Dim&Then&&&输出孪生素数&i&i&SubPublic&If&&Exit&&To&2&As&&nbsp,因双数肯定不是素数;&Next&&&End&&&+&&&&Sub&&&panduan&As&2&&Step&i;&&&&&&&&#39;&To&Command1_Click()Dim&Then&&Long)&&&Function&&&Function&&&&1&As&i&As&&&&+&&&If&&panduan(n&&End&&i&&&&&panduan&&&panduan(i&Long&&2)&&n&&&&#39;If&Print&&&&Long&判断3-100的数是否为素数;判断比i大2的数是否为素数&nbsp,&&TrueEnd&&&#39;&&&If&=&&For&For&nbspOption&ExplicitPrivate&=&&&If&=&&&&i&&&Boolean&&&iEnd&&&&&&3&i&&&Next&False&nbsp
提问者评价
其他类似问题
为您推荐:
孪生素数的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 孪生素数表 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信