C-Sprachbeispiel - Prüfen, ob eine Zahl als Summe zweier Primzahlen dargestellt werden kann
Prüfen, ob eine Zahl als Summe zweier Primzahlen dargestellt werden kann.
Beispiel
#include <stdio.h>
int checkPrime(int n);
int main()
{
int n, i, flag = 0;
printf("Geben Sie eine positive ganze Zahl ein:");
scanf("%d", &n);
for(i = 2; i <= n/2; ++i)
{
// Testen und bestimmen
if (checkPrime(i) == 1)
{
if (checkPrime(n-i) == 1)
{
printf("%d = %d + %d\n", n, i, n - i);
flag = 1;
}
}
}
if (flag == 0)
printf("%d kann nicht in zwei Primzahlen zerlegt werden.", n);
return 0;
}
// Bestimmen, ob es eine Primzahl ist
int checkPrime(int n)
{
int i, isPrime = 1;
for(i = 2; i <= n/2; ++i)
{
if(n % i == 0)
{
isPrime = 0;
break;
}
}
return isPrime;
}
Das Ausgabeergebnis ist:
输入正整数: 34 34 = 3 + 31 34 = 5 + 29 34 = 11 + 23 34 = 17 + 17Weitere Erweiterungen