zoukankan      html  css  js  c++  java
  • 【c语言趣味编程100例】亲密数

    亲密数:如果整数A的全部因子(包括1 不包括A本身)之和等于B 
        且整数B的全部因子(包括1 不包括B本身)之和等于A
        则将整数A和B称为亲密数 求3000以内的全部亲密数
    思路:
        亲密数 求3000以内的数,定义一个变量b 保留每次b的因子之和,
        然后在去遍历b的因子之和 存放于n,接着去判断n==b 如果两数相等 说明是亲密数 否则不是亲密数
        程序的关键在于:获取a和b的因子数 在去判断 并且判断的时候 应该注意一点就是a应该小于b 

    #include<stdio.h>
    void main(){
    
    	/*
    	亲密数:如果整数A的全部因子(包括1 不包括A本身)之和等于B 
    	且整数B的全部因子(包括1 不包括B本身)之和等于A
    	则将整数A和B称为亲密数 求3000以内的全部亲密数
    	思路:
    	亲密数 求3000以内的数,定义一个变量b 保留每次b的因子之和,
    	然后在去遍历b的因子之和 存放于n,接着去判断n==b 如果两数相等 说明是亲密数 否则不是亲密数
    	程序的关键在于:获取a和b的因子数 在去判断 并且判断的时候 应该注意一点就是a应该小于b
    	**/
    	int a,i,b,n;
    	printf("There are following friendly-numbers pair smaller than 3000:
    ");
    	for(a=1;a<3000;a++){
    		for(b=0,i=1;i<=a/2;i++)
    			if(!(a%i))
    				b+=i;
    		for(n=0,i=1;i<=b/2;i++)
    			if(!(b%i))
    				n+=i;
    		if(n==a&&a<b)
    			printf("%4d--%4d
    ",a,b);
    	}
    
    }
  • 相关阅读:
    原生js封装二级城市下拉列表
    jsonp帮助你知道你关注的他或她喜欢什么歌曲
    sql 进制转换,支持93内的进制相互转换
    linux下批量删除文件
    Ubuntu环境下golang环境搭建
    centos6.5 修改网络配置
    elasticsearch(二)
    Redis
    Spring Data JPA
    elasticsearch(一)
  • 原文地址:https://www.cnblogs.com/qxlxi/p/12860845.html
Copyright © 2011-2022 走看看