基于matlab寻找并显示一维数组t中的素数

一、方法介绍

首先,要编写一个寻找素数的子函数:

function primeNumbers = findPrimeNumbers(t)
    primeNumbers = [];
    for i = 1:length(t)
        num = t(i);
        isPrime = true;
        if num <= 1
            isPrime = false;
        else
            for j = 2:sqrt(num)
                if mod(num, j) == 0
                    isPrime = false;
                    break;
                end
            end
        end
        if isPrime
            primeNumbers = [primeNumbers, num];
        end
    end
end

然后,通过主函数调用该函数,寻找一维数组t中的素数。

主函数:

t = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,13,17,19];
primeNumbers = findPrimeNumbers(t);
disp(primeNumbers);

这个代码将遍历一维数组t中的每个元素,并检查它是否为素数。如果是素数,则将其添加到primeNumbers数组中。最后,将primeNumbers数组显示出来。

二、全部程序

clc; clear all; close all;

t = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,13,17,19];
primeNumbers = findPrimeNumbers(t);
disp(primeNumbers);


function primeNumbers = findPrimeNumbers(t)
    primeNumbers = [];
    for i = 1:length(t)
        num = t(i);
        isPrime = true;
        if num <= 1
            isPrime = false;
        else
            for j = 2:sqrt(num)
                if mod(num, j) == 0
                    isPrime = false;
                    break;
                end
            end
        end
        if isPrime
            primeNumbers = [primeNumbers, num];
        end
    end
end

一维数组t

t = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,13,17,19];

输出素数结果:

猜你喜欢

转载自blog.csdn.net/weixin_45770896/article/details/132946822