Matlab练习——素数查找

输入数字,0结束,判断输入的数字中的素数

clc;        %清空命令行窗口的数据
clear;      %清除工作空间的变量
k = 1;
n = 0;      %素数的个数
while 1
    zzs(k) = input('请输入正整数: ');
    if zzs(k) == 0
        break;
    end
    
    flag = 1;   %判断是否为素数
  
    for yz = 2 : sqrt(zzs(k))    %因子从2开始至该数的平方根
        if mod(zzs(k),yz) == 0      %除尽因子,就不为素数
            disp(['不是素数',yz])
            flag = 0;
            break;
        end
    end
    if flag == 1  | zzs(k) == 2            %2也算素数
        n = n + 1;
        sus(n) = zzs(k);
    end
    
    k = k +1;
end
disp(['你共输入了',num2str(k-1),'个正整数。依次为:'])
disp(zzs(1:k-1))          
if n==0
    disp('这些数中没有素数')
else
    disp(['其中的素数有',n,'个,分别为:'])
    disp(sus)
end 

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值