像17,是一个素数,当逆转,71也是素数.
我们设法得到这个代码,但我们无法完成它.
#include <stdio.h>
main()
{
int i = 10, j, c, sum, b, x, d, e, z, f, g;
printf("\nPrime numbers from 10 to 99 are the follwing:\n");
while (i <= 99)
{
c=0;
for (j = 1; j <= i; j++)
{
if (i % j == 0) c++;
}
if (c == 2)
{
b = i;
d = b / 10;
e = b - (10 * d);
x = (e * 10) + d;
{
z = 0;
f = x;
for (j = 1; j <= f; j++)
{
if (f % j == 0) z++;
}
if (z == 2)
{
printf("%d %d\n", i, f);
}
}
}
i++;
}
getch();
}
Run Code Online (Sandbox Code Playgroud)
我的问题是如何添加所有的f ..
答案应该是429.
我怎么能添加所有的f?
为什么不将代码分解为某些函数:
bool isPrime(int number) 检查数字是否为素数.int reverse(int number) 这反转了数字.那么算法将是:
sum = 0;
for (i = 2; i <= 99; ++i)
if (isPrime(i) && isPrime(reverse(i)))
sum += i;
Run Code Online (Sandbox Code Playgroud)