一个简单的调用函数的判断素数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_9418017619 小时前
面向微服务动态路由与智能流量调度的互联网系统高可用设计与多语言工程实践分享
开发语言·python
Fcy64819 小时前
AVL树(C++详解版)
开发语言·c++·avl树
是有头发的程序猿19 小时前
Python爬虫防检测实战:基于类封装的工程化解决方案(2026)
开发语言·爬虫·python
张健115640964819 小时前
explicit和initializer_list
开发语言·c++
微小冷19 小时前
C#异步编程详解
开发语言·c#·async·await·异步编程
qq_3161652919 小时前
C#委托和事件的区别
开发语言·c#
野生技术架构师19 小时前
1000道Java面试题附答案详解(整理版)
java·开发语言
CSDN_RTKLIB19 小时前
【One Definition Rule】类重复定义解决思路
开发语言·c++
落羽凉笙19 小时前
【Python基础】第2章学习笔记:从Python历史到IPO编程模式,含习题详解
开发语言·笔记·后端·python·学习