设计2~N之间素数程序
#include
main()
{
int i,j,n,k=0;
scanf("%d",&n);
for(i=2;i<=n;i++)
{
for(j=2;j<i;j++)
if(i%j==0) break;
if(i==j)
{ printf("%5d",i);k++;
if(k%10==0) printf("
");
}
}
}
参考:http://zhidao.baidu.com/question/39163257.html
我的答案有问题?怎么不给我分啊。
把源码复制到记事本保存成frm文件就可以使用了!绝对好用!
------------------------------------
呵呵。前几天刚做了了一个!哈哈
源代码如下:(VB6编写。)
VERSION 5.00
Object = "{3B7C8863-D78F-101B-B9B5-04021C009402}#1.2#0"; "RICHTX32.OCX"
Begin VB.Form Form1
Caption = "质数计算器"
ClientHeight = 8115
ClientLeft = 60
ClientTop = 450
ClientWidth = 3480
LinkTopic = "Form1"
ScaleHeight = 8115
ScaleWidth = 3480
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton Command2
Caption = "输出文件到C:\质数计算结果.txt"
Height = 495
Left = 120
TabIndex = 4
Top = 6000
Width = 3015
End
Begin RichTextLib.RichTextBox RichTextBox1
Height = 3015
Left = 120
TabIndex = 3
Top = 3000
Width = 3015
_ExtentX = 5318
_ExtentY = 5318
_Version = 393217
Enabled = -1 'True
HideSelection = 0 'False
TextRTF = $"Form1.frx":0000
End
Begin VB.TextBox Text1
BeginProperty Font
Name = "宋体"
Size = 14.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 735
Left = 240
TabIndex = 1
Top = 600
Width = 3015
End
Begin VB.CommandButton Command1
Caption = "开始计算"
BeginProperty Font
Name = "宋体"
Size = 14.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 855
Left = 240
TabIndex = 0
Top = 1320
Width = 3015
End
Begin VB.Label Label2
Caption = "计算结果:"
BeginProperty Font
Name = "宋体"
Size = 14.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 120
TabIndex = 5
Top = 2640
Width = 3135
End
Begin VB.Label Label1
Caption = "求某数以内的质数"
BeginProperty Font
Name = "宋体"
Size = 18
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 495
Left = 240
TabIndex = 2
Top = 120
Width = 3015
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
Dim a As String
c = Val(Text1.Text)
If c < 2 Then
MsgBox "请在输入框内输入至少为2的数。"
Else
a = c & "以内质数有:" & Chr(10) & "1" & Chr(10)
For i = 2 To c
x = 2
Do While i Mod x 0
x = x + 1
Loop
If i = x Then
a = a & i & Chr(10)
End If
Next
For j = 2865 To 7600
Height = j
Next
RichTextBox1.Text = a
Replace RichTextBox1.Text, Chr(34), ""
End If
End Sub
Private Sub Command2_Click()
Open "C:\质数计算结果.txt" For Output As #1
Write #1, RichTextBox1.Text
Close #1
w = MsgBox("输出完毕,要打开输出的文件么?", vbYesNo)
If w = 6 Then
Shell "cmd /c notepad C:\质数计算结果.txt", vbHide
End If
For j = 0 To 4735
Height = 7600 - j
Next
End Sub
Private Sub Form_Activate()
Form1.Height = 0
Form1.Width = 0
For j = 0 To 3630
If j <= 2865 Then
Height = j
End If
Width = j
Next
End Sub
Private Sub Form_Unload(Cancel As Integer)
Form1.Height = 0
Form1.Width = 0
For j = 0 To 3630
If j <= 2865 Then
Height = 2865 - j
End If
Width = 3630 - j
Next
End Sub
而楼主新建按钮多出来的那些代码正反映了这个本质,Handles Button1.Click是将该动作绑定到Button1这个按钮上面的意思,ByVal sender As System.Object, ByVal e As System.EventArgs这两个参数是当用户单击该按钮是,向该单击事件传递事件环境,比如鼠标指针的位置等等(即e参数)
C语言求素数
include<stdio.h>#include<math.h>void main(){ int x=100,d=999,a,i,temp; for(x;x<=d;x++) { temp = 0; a=sqrt(x); for(i=2;i<=a;i++) { if(x%i==0) { temp = 1; break; } } if(temp == 0) printf(" %d ",...
c++输入两个素数,求介于两者之间素数的个数
以下是一个 C++ 的程序示例,可以输入两个素数,然后计算这两个素数之间的素数个数:include <iostream> using namespace std;bool isPrime(int n) { \/\/ 判断是否为素数 if (n <= 1) return false;for (int i = 2; i * i <= n; i++) { if (n % i == 0) return false;} ...
请高手解释用C++求2~10的素数这一程序
这个牵扯到程序是怎么运行的 程序执行到for循环的时候是先执行 i=2 然后判断i<n然后执行那个for里面的语句 然后再让i++ 如果i=5;n=5那么for则不执行 或者i在for循环里慢慢的自加到5那么说明n不是素数所以要在21行判断i<n 然后返回n是否是素数 ...
判断素数如何判断素数
判断一个数是否为素数,通常采用的是简单但有效的算法。首先,素数定义为只能被1和其本身整除的正整数。对于整数n,我们只需要检查2到n\/2之间的数是否能整除n。这是因为如果n有一个大于n\/2的因子,那么n\/2就必然有一个对应的小于n\/2的因子,这与素数的定义相矛盾。在C语言中,可以编写如下的函数...
编写一个程序,输出3~100之间的全部素数。
从2到n的平方根遍历所有可能的因数 for i in range(2, int(n**0.5) + 1): # 如果有能整除n的因数,说明n不是素数 if n % i == 0: return False 否则,n是素数 return True# 创建一个空列表,用来存储找到的素数primes = []# 遍历3到100之间的所有整数for num in range(3,...
运用c语言程序写出:求2~100之间的素数,将之存入数组,并输出
int i, j = 2, n = 0, a[100] = {0};for (i = 2; i < 101; i++) { while (i % j != 0 && j <= i) { j++;} if (j == i) { a[n] = i;printf("%d ", a[n]);n++;j = 2;} }
...能在m~n范围内求出素数的个数 的程序 例如输入2 5 输出3
{ if(i==2) { \/\/如果是2, 直接输出。printf( "%d ", i);continue;} for(j=2;j<i;j++) \/\/应该是j
C++ ,键盘输入正整数N,输出2~N间的所有素数,以及素数个数,_百度知 ...
\/\/#include "stdafx.h"\/\/vc++6.0加上这一行.include <iostream> using namespace std;void main(void){ int n,i,j,sum=1,flag;cin >> n;cout << 2 << ' ';for(i=3;i<=n;i+=2){ for(flag=j=3;j*j<=i;j+=2)if(!(i%j)){ flag=0;break;} if(flag){ cout << ...
求证n与2n之间存在素数 n为大于等于2的自然数
可以证明n与2n之间必有素数。这是著名的Bertrand假说(Bertrand's Postulate,1845),由切比晓夫(Chebyshev)于1850年首次证明。以下网页有初等数学证明:http:\/\/www.math.uestc.edu.cn\/Article\/ShowArticle.asp?ArticleID=53
求m至n之间的所有素数(编程)
2.在表单上添加控件:标签控件,文本值为“输入数字判断是否为质数”;输入要判断的素数的文本框控件(tb_inputvalue)。3.质数属于计算方法。4.优化设计算法:取消检测间隔,提高程序效率。我们只能判断2和n\/2之间的数,然后我们就能知道它是否是质数。5.获取前100个质数之间的所有质数:从2到100逐一判断,...
毓柯注射:[答案] 关键是要有思路.质数是只能被1和自己整除.也就是说从1开始到它本身整除的次数只能是两次,超过两次的都不是质数.外层循环2到N,内层循环从1到数的本身.计数器等于2就打印.记得计数器重置.书籍推荐C Primer Plus,值得拥有. #...
积石山保安族东乡族撒拉族自治县17691197798: c语言输出2~n间的素数 - ?
毓柯注射: #include "stdio.h" #include "math.h" void main() {int i,j,n;int t=0;printf("Please input n:");scanf("%d",&n);for(i=2;i<=n;i++){for(j=2;j<=sqrt(i);j++){if(i%j==0)t++;}if(t==0)printf("%d\t",i);t=0;} }
积石山保安族东乡族撒拉族自治县17691197798: 编写程序,从键盘输入一个正整数n,求2~n之间所有的素数之和. 用c++编程 新手 帮忙解释一下 谢谢 - ?
毓柯注射: #include <iostream> #include<string> #include<iterator> #include<vector> #include<algorithm> #include<set> #include <cstring> #include<stdio.h> using namespace std; #include <iomanip> using namespace std; #include <string> #include <...
积石山保安族东乡族撒拉族自治县17691197798: 求2至n以内素数个数 C语言编程 - ?
毓柯注射: #include<stdio.h> char fun(int n) {int j;for(j=2;j<n;j++)if(n%j==0)return 0;return 1; } void main() { int i=0,sum=0;for(i=2;i<200;i++) if(fun(i))sum +=i; printf("\t200内素数:%d",sum);}
积石山保安族东乡族撒拉族自治县17691197798: 键盘输入一个整数n,求2到n之间(包括n)的素数和,用C语言,怎么写? - ?
毓柯注射: #include <stdio.h> int main() { int N, i, j; printf("输入一个数:"); scanf("%d", &N); for (i = 2; i <= N; i++) { for (j = 2; j < i; j++) if (i % j == 0) break; if (i == j) printf("%d ", i); } return 0; }
积石山保安族东乡族撒拉族自治县17691197798: 编程求出2~n之间的所有素数.n由键盘输入. - ?
毓柯注射: 您好,我是软件之家的♂北极熊熊,很高兴为您解答.================================================================================== 算法:一个数i,如果能被2到i-1整除的话,内循环就退出了,j都不会等于i的,只有全...
积石山保安族东乡族撒拉族自治县17691197798: c语言求素数的算法 - ?
毓柯注射: 根据素数的性质,代码设计如下: 设计一:判断n是否能被1~n-1整除,不能整除为素数 #include<stdio.h> int main() { int i, n; scanf("%d", &n); for (i = 2; i < n ; i++) { if (n%i == 0) break; } if (i < n) printf("This is not a prime."); else printf("This is...
积石山保安族东乡族撒拉族自治县17691197798: c++程序编写输出1到n之间素数 - ?
毓柯注射: 判断是否为素数需要进行三步: 1. 素数就是除了1和其本身以外,不能被其他数整除的数; 2. 能够整除的数就意味着运算以后余数为0; 3. 判断整数和被除数是否是同一个数,如果是那就说明该数是素数,否则不是素数.此处贴出代码,因为n...
积石山保安族东乡族撒拉族自治县17691197798: 51.编一个程序,利用while循环语句,找出2到100之间的素数. - ?
毓柯注射: 我没学过C#但是会C++语句大体如下bool chknum(int n) //判断是否n是素数的函数 {int i,ii;ii=n/2;i=2;while(i<=ii){ //从2到n/2枚举if(n%i==0) //如果n是i的倍数return true; //返回,n是合数elsei++;}return false; //没有枚举出n的因数,所...
积石山保安族东乡族撒拉族自治县17691197798: 编程两个整数之间的所有素数 - ?
毓柯注射: #include#include int main() { int a,b,n,k,i,sum=0; printf("please input two number:"); scanf("%d,%d",&a,&b); for(n=a;n<=b;n=n+2) { k=sqrt(n); for( i=2;i<=k;i++) if(n%i==0) break; if(i>=k+1){ sum=sum+n; } } printf("sum=%d",sum); }