(C语言)验证哥德巴赫猜想

哥德巴赫猜想:任意一个充分大的偶数(》=6)总可以分解成两个素数之和。
思路:对于给定的偶数,先确定一个其值小于它的素数,然后用该偶数减去这个素数,在判定其差值是不是一个素数,若是,则已经实现验证,否则,再确定另一个素数,重复以上步骤,直到找到为止。

#include<stdio.h>
int sushu(int i);
int main()
{
	puts("输入一个大于6的偶数");
	int n;
	scanf("%d", &n);
	int i, j;
	for (i = 2; i < n; i++) {
		if (sushu(i) == 1) {
			j = n - i;
			if (sushu(j) == 1) {
				printf("%d可分解为%d+%d", n, i, j);
				break;
			}
		}
	}
	return 0;
}
int sushu(int i)
{
	int j;
	for (j = 2; j < i; j++) {
		if (i%j == 0)
			return 0;
	}
	return 1;
}

猜你喜欢

转载自blog.csdn.net/Dax1_/article/details/105367689
今日推荐