婚约数,C语言

问题描述:
婚约数指两个正整数中,彼此除了1和本身的其余所有约数的和与另一方相等,例如(48,75)。
48 除1和本身所有约数相加是:2+3+4+6+8+12+16+24=75
75 除1和本身所有约数相加是:3+5+15+25=24

编译环境VC++6.0;

代码:

#include <stdio.h>

int HunYue(int x)
{
	int sum=0;
	for(int i=2;i<=x/2;i++)
		if(x%i==0)
			sum+=i;
	return sum;
}

int main()
{
	int data1,data2;
	printf("输入一个数\n");
	scanf("%d",&data1);
	data2=HunYue(data1);
	if(HunYue(data2)==data1)
		printf("存在婚约数%d\n",data2);
	else 
		printf("不存在婚约数\n");
}

测试案例:
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章