用MATLAB统计[10,10000]之间的素数个数
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/22 13:57:34
可以呀比如以下程序:i=0;forj=1:100if(j
I=imread('lena.jpg');I=double(I);In=I/255;%answerof1R=I(:,:,1);G=I(:,:,2);B=I(:,:,3);histR=hist(R);%
你得先把数组输入到matlab,比如>>A=[1235];然后用命令>>number=length(A)数组A的元素个数就显示出来了.number=4如果A是多行多列的矩阵,则需要计算如下>>[rc]
clearallN=100;J=1;O=0;Z=1;fori=2:100ifmod(i,2)==1J=J+1;elseO=O+1;endforj=2:(i-1)ifmod(i,j)==0break;e
程序如下:closeall;clear;clc;%下面是从txt中读取数列,如果是自己已经输入,可以直接从下面注释掉的语句开始b=fopen('data.txt','r');a=fread(b,'*c
没错用sum(I)就可以,此外,如果I不是由0和1组成的,可以参考如下公式:sum(I(I==x));%x=1or其他指定值;
data=1:100;cntodd=length(find(mod(data,2)==1))%奇数cnteven=length(find(mod(data,2)==0))%偶数cntprime=len
可以换个角度先写出要求范围内的素数然后在这个范围内进行逐个循环求和然后看结果个数
=sum((a==1));即求出1的个数,其他类推.
用下面语句:y=rand(1,1000);fori=1:10;x(i)=length(y(y>(i-1)*0.1&y
y=x(i-2:i+2,j-2:j+2);y=reshape(y,1,25);y=y(1:12,14:25);[c,d]=hist(y);
numel(unique(a));
代码如下:count1=0;count2=0;count3=0;Testlength=100000;%rand函数测试次数fori=1:Testlengthtmp=rand(1,1);iftmp>=0
这不是hist吗.再问:请问不用写代码吗?如果是做成曲线呢?再答:你先自己看一下hist函数的帮助文档,大概有数了以后重新明确自己的要求,你现在的要求太模糊没法写代码。再问:嗯我知道hist函数,想问
Nam=input('请输入读取文件的名字:','s')filename=strcat(Nam,'.txt');fd=fopen(filename,'r');m=fread(fd)c=size(m);
cleara=0.05m1=7;m2=8;m3=9;n=m1+m2+m3;y1=400;y2=500;mu1=y1/m1%三种语文成绩的点估计mu2=y2/m2T=tinv(1-a/2,fE);sse
你这里的斑块其实就是连通域.MATLAb自带计算连通域个数的函数:bwlabel.% 返回x中连通域个数function n = f( x
length(find(isprime(1:32765)))再问:还有,isprime的源程序是什么啊,感觉一句话就解决了有点简单,呵呵,有源程序就更好了。第二个绘图的大侠做出来了没啊,第一个按照你的
#include#includevoidmain(){inti,j=0,k;int*a;printf("\n请输入数组的个数:");scanf("%d",&i);a=(int*)malloc
其实这种情况不适合用 switch,用ifelse判断语句合适.为了说明switch用,这里我加了一个switch的判断:n1=0;%表示优的人数 >=90分n2=0;%表示良的人数 >=80分n3=