一个简单的调用函数的判断素数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) 的因数会成对出现,减少了计算量。
相关推荐
sonrisa_11 分钟前
Python同一类不同方法中变量值的传递
开发语言·windows·python
星火开发设计23 分钟前
C++ 输入输出流:cin 与 cout 的基础用法
java·开发语言·c++·学习·算法·编程·知识
机器学习之心26 分钟前
卷积神经网络(CNN) 与SE(Squeeze-and-Excitation)注意力机制锂电池剩余寿命预测,MATLAB代码
人工智能·matlab·cnn·锂电池剩余寿命预测
曹牧1 小时前
Java:强类型转换
开发语言·python
wuguan_1 小时前
C#之线程
开发语言·c#
LXS_3571 小时前
STL - 函数对象
开发语言·c++·算法
木千1 小时前
Qt5.15.2安装MSVC2019编译器
开发语言·qt
仟濹1 小时前
【Java加强】1 异常 | 打卡day1
java·开发语言·python
去往火星1 小时前
Qt6 CMake 中引入 Qt Linguist 翻译功能
开发语言·qt
阿猿收手吧!1 小时前
【C++】atmoic原子操作与并发安全全解析
开发语言·c++·安全