5.12
一、问题描述:
如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。
二、设计思路:
1、首先定义变量 a,并为其赋初值为某个整数。则按照亲密数定义,要判断α中存放的整数是否有亲密数,只要计算出该整数的全部因子的累加和,并将该累加和存放到另一个变量b中,此时b中存放的也是一个整数。
2、再计算b中存放整数的全部因子的累加和,将该累加和存放到变量n中。、首先定义变量a,并为其赋初值为某个整数.则按照亲密数定义,要判断α中存放的整数是否有亲密数,只要计算出该整数的全部因子的累加和,并将该累加和存放到另一个变量b中,此时b中存放的也是一个整数.再计算b中存放整数的全部因子的累加和,将该累加和存放到变量n中.
三、程序流程图:
四、代码示例:
#include<stdio.h> int main() { int A; int sum; int B; int n; scanf("%d",&A); int i,j; for(j=0;j<A;j++) { for(sum=0,i=1;i<=j/2;i++) { if(j%i==0) { sum+=i; } } for(B=0,n=1;n<=sum/2;n++) { if(sum%n==0) { B+=n; } } if(B==j&&j<sum) printf("亲密数%d--%d\n",j,sum); } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)