显示所有和为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
我正在编写哥德巴赫猜想的代码,以显示总和等于正偶数 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