編程質數
/**
**程序說明:質數也叫素數。
*/
#include<stdio.h>
#include<math.h>
//判斷整數是否為素數
intisPrime(intn)
{
inti;
for(i=2;i<=(int)sqrt(n);i++)//遍歷從2~n的平方根向下取整
if(n%i==0)//如果有i能被n整除,則n不是素數,返回0,否則返回1
return0;
return1;
}
//求某一范圍內的所有素數
voidqiuPrimeNumber(intstart,intend)
{
inti,j,count;
for(i=start,count=0;i<=end;i++)
if(isPrime(i))//調用素數判斷函數
{
printf("%-4d",i);
count++;
if(count%10==0)//輸出10個素數則輸出一個換行
{
printf(" ");
count=0;
}
}
}
intmain()
{
printf("50~100之間的所有質數為: ");
qiuPrimeNumber(50,100);//調用函數求出50~100內的所有質數
return0;
}
❷ C語言編程:判斷某數是否是質數
#include<stdio.h>
int main(int argc,int argv[]){
int a,flag;
scanf("%d",&a);/*輸入一個數進行判斷是否是質數*/
int isprime(int);/*這里是對將要調用的函數聲明一下*/
flag=isprime(int);
if(flag==1) printf("%d is isprime",a);
printf("%d is not isprime",a):
return 1;/*這里的語句代表調用函數成功*/
}
int isprime(int a){ /*功能函數,判斷是否是素數*/
int i;
for(i=2;i<=a/2;i++)
if(a%i==0) return 0;/*只要有一次相除為0,馬上激衡就能判斷不是素旦亂數*/
return 1;/*否則經過循環之後,都沒有相除為0呢,就說明一定是素數了*/
}
看到這里是不是有點疑惑了呢?我到網路查了一下,質數也稱素數,你注意看就好。。不懂再追問。。
不過我想你看完之後你應該能明的了,我已經寫得好明遲做詳細了啦。。。。
❸ 編程求質數
#include
#include
void
main()
{
int
m,i,k;
scanf("%d",&m);
k=sqrt(m);
for
(i=2;i
if(m%i==0)break;
if(i>k)printf("%d
is
a
prime
number\n",m);
else
printf("%d
is
not
a
prime
number\n",m);
}
此程序判斷一個大於等於2的整數是質數還是合數。
要軟體10分鍾就可以做一個,就是帶窗口程序的,不過馬上要去實驗室了。
再給20分晚上就幫你做。
❹ VB編程判斷質數
樓上回答的寬悉不錯,不過沒有你要的180=2^2*2^2*5的輸出,呵呵,這個提示挺有意思的,我沒做過,心裡有點癢癢。一會我去職稱考試,還有半個小時時間,幫你試一試吧,不然我老合計這個。。。
dim iInput as long, iVal as long
dim iPos as long
dim sResult as string, iPower as long
iInput=abs(val(inputbox("請輸入一個正整數")))
iVal=iInput
iPos=2
iPower=0
sResult=""
do while iPos<iVal or (iPos=iVal and not iInput=iVal)
if iVal Mod iPos=0 then
if iPower=0 then
if sResult<>"" then sResult=sResult & "*"
sResult=sResult & iPos
end if
iPower=iPower+1 '記錄這是幾次方
iVal=iVal\iPos
else
if iPower>1 then sResult=sResult & "耐巧皮^" & cstr(iPower) '1次方以上要記錄^n
iPower=0
iPos=iPos+1
end if
loop
if sResult="" then
Picture1.print "這個數是質數"昌差
else
sResult=iInput & "=" & sResult
if iPower>1 then sResult=sResult & "^" & cstr(iPower)
if iVal>1 then sResult=sResult & "*" & iVal
Picture1.print sResult
end if
'把這些代碼粘貼到一個事件里使用,例如一個按鈕的Click事件里。
❺ 輸出100以內的質數,用c語言編寫
#include <stdio.h>
int main(int argc, char **argv)
{
int x;
for (x=1;x<100;x++){
int i;
int isprime=1;//表示x是素數。
for(i=2;i<x;i++){
if (x%i==0){
isprime=0;
break;
}
}
if (isprime==1){
printf("%d",x);
}
}
return 0;
}
C語言編程計算注意事項:
1、編程時注意符號大小寫。
2、main函數要有返回值
3、C語言中定義數組,要定義出大小,數組的大小隻能是常量不能是變數。
4、%md ; %0md ;%.mf;(以m位進行右對齊輸出,不足m位空格補上;以m位進行右對齊輸出。不足m位用0補上;保留m位小數)
❻ 如何用編程尋找質數
以下的程序用來尋找n以內的所有質數:
#include<stdio.h>
int isprime(int n)
{ for(int i=2; i*i<=n; i++)
if(n%i==0)return 0;
return n>1;
}
int main()
{ int n,i,k=0;
scanf("%d",&n);
for(i=2; i<=n; i++)
if(isprime(i))
{ printf("%d ",i);
if(++k%10==0)printf(" ");
}
printf(" ");
return 0;
}
❼ C語言編程,1到100,求質數,誰能幫幫我啊,網上找的,不完整,看不懂,毫無思路
#include<stdio.h>
#include<math.h>
intf(intn)
{
inti;
//素數標准:只能被自己和1整除的數字
for(i=2;i<=sqrt(n);i++)
{
//能被其他數整除,就不是素數
if(n%i==0)
return0;
}
return1;
}
intmain()
{
inti,k=0;
printf("1至100之間的素數從小到大分別為: ");
for(i=2;i<=100;i++)
{
//依次判斷所有數字是否為素數
if(f(i))
{
k++;
printf("%d ",i);
}
}
printf(" 總共%d個。 ",k);
return0;
}
❽ 編程用函數判斷質數
//我不知道你需要哪種語言編寫的程序,做陪所以就用了現在比較流行的三種編程語法
//程序1:c++運行環境
#include<stdio.h>
int is_prime_number(int num){
int i;//循環控制變數
int lag=1;//是否為質數的一個標志,當lag為1時表示該數為質數,為0時表示不為質數
if(num==1)
lag=0;
else
for(i=2;i<num;i++)
if(num%i==0){
lag=0;
break;
}
return lag;
}//判斷數num是否為質數,如果為質數則返回1,如果不為質數則返回0
int get_result(){
int i;
int sum=0;//用來保存1到10之間的質數之和
for(i=1;i<=10;i++)
if(is_prime_number(i))
sum+=i;
return sum;
}//返回1到10之間的質數之和
void main(){
printf("1到10之間的質數之和為:%d\n",get_result());
}
//程序2:java運行環境
class prime_number
{
int is_prime_number(int num){
int i;//循環控制變數
int lag=1;//是否為質數的一個標志,當lag為1時表示該數為質數,為0時表示不為質數
if(num==1)
lag=0;
else
for(i=2;i<num;i++)
if(num%i==0){
lag=0;
break;
}
return lag;
}//判斷數num是否為質數,如果為質數則返回1,如果不為質數則返回0
int get_result(){
int i;
int sum=0;//用來保存1到10之間的質數之和
for(i=1;i<=10;i++)
if(this.is_prime_number(i)==1)
sum+=i;
return sum;
}//返回1到10之間的質數之和
public static void main(String[] args)
{
prime_number prime_number1=new prime_number();
System.out.println("1到10之間的質數這和為:"+prime_number1.get_result());
}
}
//程序3:javascript編程語法(將下列程序復制到文本文件後,保存為htm格式,雙擊即可得出結果)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建網頁 1</title>
</head>
<body>
<script language=javascript>
function is_prime_number(num){
var i;//循環控團胡正制變數
var lag=1;//是否為質數的一個標志,當lag為1時表示該數為質數,為0時表示不為質數
if(num==1)
lag=0;
else
for(i=2;i<num;i++)
if(num%i==0){
lag=0;
break;
}
return lag;
}//判斷數num是否為質數,如果為質數則返回1,如果不為質數則返回0
function get_result(){
var i;
var sum=0;//用來保塌悔存1到10之間的質數之和
for(i=1;i<=10;i++)
if(is_prime_number(i))
sum+=i;
return sum;
}//返回1到10之間的質數之和
alert("1到10之間的質數之和為:"+get_result());
</script>
</body>
</html>
❾ 查找100以內的所有質數的python編程怎麼寫
質數(prime number)又稱素數,有無限個。質數定義為在大於1的自然數中,除了1和它本身以外不再有其他因數的數稱為質數,如:2、3、5、7、11、13、17、19。
方法一:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
num=[];
i=2
for i in range(2,100):
j=2
for j in range(2,i):
if(i%j==0):
break
else:
num.append(i)
print(num)
方法二:
import mathdef
func_get_prime(n):
return filter(lambda x: not [x%i for i in range(2, int(math.sqrt(x))+1) if x%i ==0], range(2,n+1))
print func_get_prime(100)
輸出結果為:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
希望我的回答對你有幫助!
❿ C語言編程:輸出1到N中所有質數的個數
#include
#include
#include
int
panan(int
n)
{
int
i=2;
for(i;i<=sqrt(n);++i)
//判斷是質數只用到n的平方根就好
if(n%i==0)
return
0;
//余數為0,說明n有約數,所以返回0
return
1;
//表示沒有餘數返回1
}
int
main()
{
int
a=2,i=2,t=100000,n;
printf("輸入n:");
scanf("%d",&n);
printf("1~%d之間的質數有棚核談:",n);
//
printf("%d",a);
//可以在後邊輸出
這個可以省略
if(n<=100000&&n>1)
//如果是while(),將是一個死循環,程序不會停止,用if做判斷
{
do
{
if
(panan(i))
//i%a是判斷奇數的不是鏈碰判斷質數的,我做了一氏乎個程序調用
printf("%d
",i);
++i;
}
while(i<=n);//如果只是i
評論
0
0
載入更多