一共两段C源文件都是非常简单的求素数方法算法一:#include <stdio.h>void main(){ int i,j,k,sum=0; for (i=1;i<=1000;i++) { k=0; for (j=2;j<=i/2;j++) if(i%j==0) k=1; if(k==0) {printf("%d/n",i); sum=sum+i;} } printf("%d/n",sum);}算法二:这段算法里定义了一个数组(大小为100个,但具体个数无所谓,就是为了储存数据),在MATLAB里请以矩阵的方法来替代#include <stdio.h>void main(){ int a[500]; int i,j,k,state; a[0]=2; k=0; for(i=3;i<=1000;i++) { state=0; for(j=0;j<=k;j++) if(i%a[j]==0) {state=1;break;}; if(state==0) {k+=1; a[k]=i; printf("%d/n",i);} }}
clear all;sum=0;for i=1:1000 k=0; for j=2:i/2 if(mod(i,j)==0) k=1; end end if(k==0) sprintf('%d/n',i) sum=sum+i; endendsprintf('%d/n',sum)这个是按照你第一个代码转换来的。第二段代码你找着上面那个自己转换就行了。 |
|