matlab经典编程例题

以下各题均要求编程实现,并将程序贴在题目下方。

1.从键盘输入任意个正整数,以0结束,输出那些正整数中的素数。

clc;clear;

zzs(1)=input('请输入正整数:');k=1;

n=0;%素数个数

while zzs(k)~=0

flag=0;%是否是素数,是则为1

for yz=2:sqrt(zzs(k))%因子从2至此数平方根

if mod(zzs(k),yz)==0

flag=1;break;%非素数跳出循环

end

end

if flag==0&zzs(k)>1%忽略0和1的素数

n=n+1;sus(n)=zzs(k);

end

k=k+1;

zzs(k)=input('请输入正整数:');

end

disp(['你共输入了' num2str(k-1) '个正整数。它们是:'])

disp(zzs(1:k-1))%不显示最后一个数0

if n==0

disp('这些数中没有素数!')%无素数时显示

else

disp('其中的素数是:')

disp(sus)

end

2.若某数等于其所有因子(不含这个数本身)的和,则称其为完全数。编程求10000以内所有的完全数。

clc;clear;

相关推荐
相关主题
热门推荐