大學(xué)生新聞網(wǎng),大學(xué)生新聞發(fā)布平臺(tái)
大學(xué)生新聞網(wǎng)
大學(xué)生新聞大學(xué)生活校園文學(xué)大學(xué)生村官
社會(huì)實(shí)踐活動(dòng)社會(huì)實(shí)踐經(jīng)歷社會(huì)實(shí)踐報(bào)告社會(huì)實(shí)踐總結(jié)社會(huì)實(shí)踐心得
全國排名校友會(huì)版軟科排名分類排名本科排名一本排名二本排名專科排名學(xué)校地址
求職簡歷職場法則面試技巧職場故事求職招聘大學(xué)生就業(yè)
英語學(xué)習(xí)計(jì)算機(jī)學(xué)習(xí)電氣工程機(jī)械工程經(jīng)濟(jì)管理建筑設(shè)計(jì)財(cái)務(wù)會(huì)計(jì)
申請書證明書檢討書自薦信演講稿心得體會(huì)調(diào)查報(bào)告讀后感求職信推薦信其它范文

C語言求親密數(shù)

問題描述
如果整數(shù)A的全部因子(包括1,不包括A本身)之和等于B;且整數(shù)B的全部因子(包括1,不包括B本身)之和等于A,則將整數(shù)A和B稱為親密數(shù)。求3000以內(nèi)的全部親密數(shù)。
問題分析
根據(jù)問題描述,該問題可以轉(zhuǎn)化為:給定整數(shù)A,判斷A是否有親密數(shù)。

為解決該問題,首先定義變量a,并為其賦初值為某個(gè)整數(shù)。則按照親密數(shù)定義,要判斷a中存放的整數(shù)是否有親密數(shù),只要計(jì)算出該整數(shù)的全部因子的累加和,并將該累加和存放到另一個(gè)變量b中,此時(shí)b中存放的也是一個(gè)整數(shù)。再計(jì)算b中存放整數(shù)的全部因子的累加和,將該累加和存放到變量n中。

若n等于a則可判定變量a和b中所存放的整數(shù)是親密數(shù)。

算法設(shè)計(jì)
計(jì)算數(shù)A的各因子的算法:用A依次對(duì)i(i的范圍可以是1〜A-1、1〜(A/2-1)中之一) 進(jìn)行模(“%”,在編程過程中一定注意求模符號(hào)兩邊參加運(yùn)算的數(shù)據(jù)必須為整數(shù))運(yùn)算,若模運(yùn)算結(jié)果等于0,則i為A的一個(gè)因子加;否則i就不是A的因子。將所求得的因子累到變量B。

接下來求變量B的因子:算法同上,將B的因子之和累加到變量n。根據(jù)親密數(shù)的定義判斷變量n是否等于變量A(if(n==a)),若相等,則A和B是一對(duì)親密數(shù),反之則不是。

程序流程圖:




下面是完整的代碼:

#include<stdio.h>
int main()
{
    int a, i, b, n;
    printf("There are following friendly--numbers pair smaller than 3000:\n");
    for( a=1; a<3000; a++ )  /*窮舉3000以內(nèi)的全部整數(shù)*/
    {
        for( b=0, i=1; i<=a/2; i++)  /*計(jì)算數(shù)a的各因子,各因子之和存放于b*/
            if(!(a%i))
                b+=i;
        for( n=0, i=1; i<=b/2; i++ )  /*計(jì)算b的各因子,各因子之和存于n*/
            if(!(b%i))
                n+=i;
        if(n==a && a<b)  /*使每對(duì)親密數(shù)只輸出一次*/
            printf("%4d--%4d    ", a, b);  /*若n=a,則a和b是一對(duì)親密數(shù),輸出*/
    }
    
    return 0;
}
運(yùn)行結(jié)果:

There are following friendly--numbers pair smaller than 3000:
220-- 284 1184--1210 2620--2924

知識(shí)點(diǎn)補(bǔ)充
對(duì)于這類多次將某些值存儲(chǔ)到一個(gè)變量中時(shí),一定要注意變量賦初值的位置。
    作者:大學(xué)生新聞網(wǎng)    來源:大學(xué)生新聞網(wǎng)
    發(fā)布時(shí)間:2025-03-11    閱讀:
    掃一掃 分享悅讀
  • C語言求自守?cái)?shù)
  • 自守?cái)?shù)是指一個(gè)數(shù)的平方的尾數(shù)等于該數(shù)自身的自然數(shù)。
  • 03-11 關(guān)注:0
  • C語言求親密數(shù)
  • C語言求親密數(shù)
  • 如果整數(shù)A的全部因子(包括1,不包括A本身)之和等于B;且整數(shù)B的全部因子(包括1,不包括B本身)之和等于A
  • 03-11 關(guān)注:0
  • C語言求完數(shù)(完全數(shù))
  • C語言求完數(shù)(完全數(shù))
  • 如果一個(gè)數(shù)等于它的因子之和,則稱該數(shù)為“完數(shù)”(或“完全數(shù)”)。例如,6的因子為1、2、3,而 6=1+2+3,因此6是“完數(shù)”。
  • 03-11 關(guān)注:1
  • C語言輸出菱形(詳解版)
  • C語言楊輝三角(兩種方法)
  • 楊輝三角是我們從初中就知道的,現(xiàn)在,讓我們用C語言將它在計(jì)算機(jī)上顯示出來。
  • 03-10 關(guān)注:5
主站蜘蛛池模板: 国产成人综合在线视频| 狠狠躁天天躁中文字幕无码| 美女毛片一区二区三区四区| 美女黄色一级毛片| 精品久久久久久久久久中文字幕| 看免费毛片天天看| 污污内射在线观看一区二区少妇| 欧美另类黑人巨大videos| 中文字幕永久在线观看| 久久国产精品-久久精品| a级国产乱理伦片| 亚洲神级电影国语版| 亚洲国产成人99精品激情在线| 亚洲av午夜成人片| 久99久热只有精品国产女同| 在线美女免费观看网站h| 免费无码又爽又高潮视频| 国产精品无码免费播放| 成人福利小视频| 欧美一区二区三区久久综合| 美景之屋4在线未删减免费| 91福利在线观看视频| 久久99精品久久久大学生| 亚洲欧美一区二区三区| 国产99久久亚洲综合精品| 国产精品区免费视频| 思思91精品国产综合在线| 明星女友开挂吧电视剧在线观看| 精品国产v无码大片在线看| 日本特黄特色特爽大片老鸭| videofree极品另类| 久久午夜福利无码1000合集| 亚洲欧洲精品一区二区三区| 国产a一级毛片含羞草传媒| 国产精品久久久久影视不卡| 寂寞山村恋瘦子的床全在线阅读| 曰批全过程免费视频观看免费软件 | 亚洲熟女综合色一区二区三区 | 老师的圣水女主小说网| 宅男噜噜噜66| 97人妻天天爽夜夜爽二区|