判断亲密数

1213 判断亲密数

题目描述

如果整数A的全部因子(包括1,不包括A本身)之和等于B,并且整数B的全部因子(包括1,不包括B本身)之和等于A,则称整数A和B为亲密数。任意输入两个正整数,判断他们是否为亲密数。若是亲密数,则输出1,否则输出0.

输入描述

/*
输入两个整数。
*/
220 284

输出描述

/*
若是亲密数,则输出1,否则输出0。
*/
1
#include<stdio.h>
#include<math.h>

int isqinmi(int a,int b){
	int i=0;
	int suma=0,sumb=0;
	int flaga=0,flagb=0;
	for(i=1;i<a;i++)
		if(a%i==0)
			suma+=i;
			
	if(suma==b)
		flaga=1;
	
	for(i=1;i<b;i++)
		if(b%i==0)
			sumb+=i;
	
	if(sumb==a)
		flagb=1;
		
	if(flagb && flaga)		
		return 1;
	return 0;
}
int main(){
	int a,b;
	int res;
	scanf("%d %d",&a,&b);
	res =isqinmi(a,b);
	printf("%d
",res); 
	return 0;
}  
原文地址:https://www.cnblogs.com/lwp-nicol/p/14299963.html