概述
matlab中whilebreakcontinue循环嵌套的练习
1、从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和。
msum=0;
n=0;
x=input('Enter a number (end in 0):');
while x~=0
msum=msum+x;
n=n+1;
x=input('Enter a number (end in 0):');
end
if n>0
msum
mean=msum/n
end
简化:
n=1;
mat=[];
while n~=0
n=input('请输入一个数:');
mat=[mat,n];
end
sumn=sum(mat)
aver=sumn/length(mat)
2、求[100,200]之间第一个能被21整除的整数。
for n=100:200
if rem(n,21)~=0
continue
end
n
break
end
简化:
mat=100:200;
newmat=rem(mat,21);
k=find(~newmat);
mat(k(1))
randi函数的使用:
r = randi(imax,n):生成n*n的矩阵
r = randi(imax,m,n):生成m*n的矩阵
r = randi(imax,[m,n]):同上
r = randi(imax,m,n,p,...):生成m*n*p*...的矩阵
r = randi(imax,[m,n,p,...])同上
r = randi(imax):1*1的矩阵
r = randi(imax,size(A)):和size(A)同维的矩阵
r = randi([imin,imax],...)
tic toc计时
3、用筛选法求某自然数范围内的全部素数。
原理:将1:m内的所有2的倍数(不含2),3的倍数(不含3)均令为0
m=input('m=');
p=1:m;
p(1)=0;
for i=2:sqrt(m)
for j=2*i:i:m
p(j)=0;
end
end
n=find(p~=0);
p(n)
补充循环结构中的知识:
1、k=[k,n],k后面是逗号代表以行写入,如果是分号,k向量就是列向量了。
2、s=0;
for i=1:10
if rem(i,2)==0
continue
end
if rem(i,7)==0
break
end
s=s+i;
end
disp(s)
输出结果:s=9(1+3+5)
最后
以上就是优美海燕为你收集整理的循环 嵌 matlab,MATLAB中循环嵌套的实践,matlab,whilebreakcontinue,练习的全部内容,希望文章能够帮你解决循环 嵌 matlab,MATLAB中循环嵌套的实践,matlab,whilebreakcontinue,练习所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复