一个简单的调用函数的判断素数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) 的因数会成对出现,减少了计算量。
相关推荐
MC皮蛋侠客1 小时前
OPC UA 系列(一):标准全景与 Python 最小闭环——让第一条设备数据流动起来
开发语言·python·opcua
SamChan901 小时前
PDF翻译后的格式完整性校验:用Python自动比对译文与原文档的表格与段落结构
开发语言·python·ai·pdf·机器翻译
君顾11 小时前
外卖CPS系统开发实战指南:从架构设计到部署全流程解析
java·开发语言·外卖
是立不是利2 小时前
前端交互基石:深入剖析JavaScript三级联动背后的设计哲学
开发语言·前端·javascript
老刘的望远镜2 小时前
AgentScope Java 从零(03):Agent 的记性默认全开,我在第 50 轮翻了车
java·开发语言·javascript
Littlehero_1212 小时前
QT自定义控件之电气接线图(源码开源)
开发语言·qt
中科三方3 小时前
DNS拨测到底在拨测什么?
开发语言·github·php·dns·云拨测
软件黑马王子3 小时前
20.Resources资源加载:基本实现
开发语言·前端框架·c#
李少兄3 小时前
Java 中只有值传递吗?
java·开发语言·python