一个简单的调用函数的判断素数Matlab代码

Matlab 复制代码
num = 29;  % 输入要检查的数字
if isPrime(num)
    fprintf('%d 是一个素数。\n', num);
else
    fprintf('%d 不是一个素数。\n', num);
end

判断素数的函数 isPrime

Matlab 复制代码
function result = isPrime(n)
    if n <= 1
        result = false;  % 1及以下不是素数
    elseif n == 2
        result = true;   % 2 是素数
    else
        result = true;   % 默认认为是素数
        for i = 2:sqrt(n)
            if mod(n, i) == 0  % 如果能被某个数整除,则不是素数
                result = false;
                break;
            end
        end
    end
end

解释:

  1. 主程序部分:

    • num = 29; 定义了要检查的数字。
    • 通过 isPrime(num) 调用函数检查 num 是否是素数。
    • 根据函数返回值,打印是否是素数。
  2. isPrime 函数:

    • 该函数检查输入的数字是否是素数。
    • 对于数字 n <= 1,直接返回 false(因为 1 及以下的数字不是素数)。
    • 对于数字 n == 2,返回 true(2 是素数)。
    • 对于其他数字,函数使用循环检查是否能找到能整除 n 的数字。如果找到,则 n 不是素数,返回 false
    • 只检查到 sqrt(n),因为超过 sqrt(n) 的因数会成对出现,减少了计算量。
相关推荐
2501_933329558 分钟前
媒介宣发技术实践:Infoseek舆情系统的AI中台架构与应用解析
开发语言·人工智能·架构·数据库开发
[J] 一坚1 小时前
嵌入式高手C
c语言·开发语言·stm32·单片机·mcu·51单片机·iot
odoo中国1 小时前
Odoo 19技术教程 : 如何在 Odoo 19 中创建 Many2one 组件
开发语言·odoo·odoo19·odoo技术·many2one
逻辑驱动的ken1 小时前
Java高频面试考点场景题14
java·开发语言·深度学习·面试·职场和发展·求职招聘·春招
bu_shuo2 小时前
MATLABSimulink连接线变为斜线解决方案
matlab·simulink
jghhh012 小时前
使用 MATLAB 实现支持向量回归 (SVR) 预测未来数据
算法·matlab
techdashen3 小时前
Cloudflare 如何把一个大型代理拆成三个小服务来提升可靠性
开发语言·rust
geovindu3 小时前
go: Chain of Responsibility Pattern
开发语言·设计模式·golang·责任链模式
十五年专注C++开发3 小时前
WaitingSpinnerWidget: 一个高度可配置的自定义Qt等待加载动画组件
开发语言·c++·qt·waitingspinner
苍煜4 小时前
ThreadPoolExecutor线程池终极全解:同步异步判定+SpringBoot生产实战
java·开发语言·spring boot