|
素?cái)?shù): 按照素?cái)?shù)的定義,可以用2~number-1的所有證書去除number,只要有能整除的,便說明number不是素?cái)?shù)。不過對任意值的number檢驗(yàn)它是否為素?cái)?shù)時(shí),不必使用比其平方根大的數(shù)取整除它。 #include #include int void { } int { } 最大公約數(shù)與最小公倍數(shù):歐幾里德算法(輾轉(zhuǎn)相除法),計(jì)算原理依賴如下定理: gcd(a,b)=gcd(b,a code: #include void int int void { } void { } int { } int { } 斐波那契數(shù)列: 其第一項(xiàng)和第二項(xiàng)的值都為1,以后各項(xiàng)的值為其前兩項(xiàng)值之和。所以要計(jì)算第n項(xiàng)的值f(n),可以列出其遞歸式f(n)=f(n-1)+f(n-2),當(dāng)n=1或2時(shí),其值為1。 方法一: #include void { } 方法二:(遞歸)注:效率不高 #include int void { } int { }
素?cái)?shù):
#include"stdio.h" void main() {int n,i; for(n=0;n<=500;n++) {for(i=2;i<=n-1;i++) if(n%i==0)break; if(i>=n)printf("%d\t",n);} } 最大公約數(shù): #include<stdio.h> void main() {int m,n,r; printf(" 請輸入兩個(gè)數(shù)"); scanf("%d,%d",&m,&n); while(1) {r=m%n; if(r==0)break; else {m=n; n=r;}} printf("%d",n); } 最小公倍數(shù) #include<stdio.h> void main() {int m,n,r,t; int static s; printf(" 請輸入兩個(gè)數(shù)"); scanf("%d,%d",&m,&n); s=m*n; while(1) {r=m%n; if(r==0)break; else {m=n; n=r;}} t=s/n; printf("%d",t); } |
|
|