一个简单的调用函数的判断素数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) 的因数会成对出现,减少了计算量。
相关推荐
冷雨夜中漫步4 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
m0_736919106 小时前
C++代码风格检查工具
开发语言·c++·算法
yugi9878386 小时前
基于MATLAB强化学习的单智能体与多智能体路径规划算法
算法·matlab
2501_944934737 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
黎雁·泠崖7 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_763472468 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
TechWJ8 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
lly2024069 小时前
C++ 文件和流
开发语言
m0_706653239 小时前
分布式系统安全通信
开发语言·c++·算法
寻寻觅觅☆9 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++