显示所有和为N的素数对

Display all prime number pairs whose sum is N

我正在编写哥德巴赫猜想的代码,以显示总和等于正偶数 N 的素数对。我能够找到这些素数对,但我想打印所有这些素数对在一行中等于 N。

关于我如何能够实现预期结果的任何线索?这是我制定的代码:

function goldB(N)
    for x = 6:2:N
        P = primes(x);
        for y = 1:length(primes(x))
            for z = 0:(length(P)-y)
                if P(y) + P(y+z) == x
                    fprintf('\n%d = %d + %d',x,P(y),P(y+z));
                end
            end
        end
    end
end

我认为最简单的方法是更改​​函数调用,以便它单独打印目标号码(连同换行符),然后还打印与其关联的所有对(当它们被发现时):

function goldB(N)
    for x = 6:2:N
        fprintf('\n%d', x);
        P = primes(x);
        for y = 1:length(primes(x))
            for z = 0:(length(P)-y)               
                if P(y) + P(y+z) == x
                    fprintf('= %d + %d', P(y), P(y+z));
                end
            end
        end
    end
end