1. 程式人生 > >7-7 找完數(20 分)

7-7 找完數(20 分)

一、題目

這裡寫圖片描述

二、個人理解

此題就是先進行因子的計算,因為必須要判斷所有因子和是否等於數字,所以要儲存以前的因子,這裡我們可以採用陣列來進行儲存。

C語言:

#include <stdio.h>
#include <string.h>
#define maxn 10000

int main()
{
    int m, n, a[maxn], count = 0;
    scanf("%d%d", &m, &n);
    for (int i = m; i <= n; i++) {
        memset(a, 0, sizeof(a));    //這是對陣列進行初始化為0
int sum = 0; for (int j = 1; j < i; j++) {//進行因子的儲存 if (i % j == 0) { a[j] = 1; //值為1的索引即是因子 sum += j; //順便可以計算因子和 } } if (i == sum) { //進行判斷 count++; //這是判斷有沒有,若為0,則輸出None printf("%d = ", i); int
tag = 1;//tag的作用為進行格式化輸出 for (int t = 0; t < maxn; t++) { if (a[t] == 1) { if (tag) { printf("%d", t); tag = 0; } else { printf(" + %d", t ); } } } printf
("\n"); } } if (count == 0) { printf("None"); } }

相關推薦

7-45 20

分解 tex bre ... can ret style 正整數 bsp 所謂完數就是該數恰好等於除自身外的因子之和。例如:6=1+2+3,其中1、2、3為6的因子。本題要求編寫程序,找出任意兩正整數m和n之間的所有完數。 輸入格式: 輸入在一行中給出2個正整數m和n(1&

PAT 7-1 20

#include<iostream> #include<vector> #include<cstdio> #include<set> #include<map> #include<string> #

7-45 20

7-45 找完數 (20 分) 所謂完數就是該數恰好等於除自身外的因子之和。例如:6=1+2+3,其中1、2、3為6的因子。本題要求編寫程式,找出任意兩正整數m和n之間的所有完數。 輸入格式: 輸

7-3 20

7-3 找完數(20 分) 所謂完數就是該數恰好等於除自身外的因子之和。例如:6=1+2+3,其中1、2、3為6的因子。本題要求編寫程式,找出任意兩正整數m和n之間的所有完數。 輸入格式:

中M2018春C入門和進階練習集-程式設計題45 7-45 20

7-45 找完數(20 分) 所謂完數就是該數恰好等於除自身外的因子之和。例如:6=1+2+3,其中1、2、3為6的因子。本題要求編寫程式,找出任意兩正整數m和n之間的所有完數。 輸入格式: 輸入在一行中給出2個正整數m和n(1<m≤n≤10000),中間以空格分

7-7 20

一、題目 二、個人理解 此題就是先進行因子的計算,因為必須要判斷所有因子和是否等於數字,所以要儲存以前的因子,這裡我們可以採用陣列來進行儲存。 C語言: #include <s

20

所謂完數就是該數恰好等於除自身外的因子之和。例如:6=1+2+3,其中1、2、3為6的因子。本題要求編寫程式,找出任意兩正整數m和n之間的所有完數。 輸入格式: 輸入在一行中給出2個正整數m和n(1),中間以空格分隔。 輸出格式: 逐行輸出給定範圍內每個完數的因子

7-56 鞍點 20

7-56 找鞍點 (20 分) 一個矩陣元素的“鞍點”是指該位置上的元素值在該行上最大、在該列上最小。 本題要求編寫程式,求一個給定的n階方陣的鞍點。 輸入格式: 輸入第一行給出一個正整數n(1

## 7-9 梅森 20

7-9 梅森數 (20 分) 形如2^ ​n ​​ −1的素數稱為梅森數(Mersenne Number)。例如2^ ​2 ​​ −1=3、2^ ​3 ​​ −1=7都是梅森數。1722年,雙目失明的瑞士數學大師尤拉證明了2^ ​31 ​​ −1=2147483

基礎程式設計題目集:6-7 統計某類完全平方20

int IsTheNumber(const int N) { int n = sqrt(N); int k = 0, tmp = N; int a[5] = { 0 }; //判斷是否是完全平方數 if (n*n == N) { //先N轉陣列 //判斷有多少位 while (

PTA 中M2018秋C入門和進階練習 7-44 黑洞 20

7-44 黑洞數 (20 分) 黑洞數也稱為陷阱數,又稱“Kaprekar問題”,是一類具有奇特轉換特性的數。 任何一個各位數字不全相同的三位數,經有限次“重排求差”操作,總會得到495。最後所得的

PTA_基礎程式設計題目集_6-7 統計某類完全平方 20

題目地址 我的程式碼 int IsTheNumber(const int N) { int n = N, tn, jud = 0, mark = 0; tn = (int)(sqrt((double)(n))); //利用非完全平方整數,開方存在小數;double強行轉

6-7 統計某類完全平方20

本題要求實現一個函式,判斷任一給定整數N是否滿足條件:它是完全平方數,又至少有兩位數字相同,如144、676等。 函式介面定義: int IsTheNumber ( const int N ); 其中N是使用者傳入的引數。如果N滿足條件,則該函式必須返回1,否則返回0

6-7 統計某類完全平方20 本題要求實現一個函式,判斷任一給定整數N是否滿足條件:它是完全平方,又至少有兩位數字相同,如144、676等。

int IsTheNumber ( const int N ) {   int r=sqrt(N);   int n=N;   int a[10]={};   if(r*r==N){     int d;     while(n){       d=n%10;      

7-28 猴子選大王20

code bre 大王 printf cti 圈子 格式 猴子選大王 can 7-28 7-28 猴子選大王(20 分) 一群猴子要選新猴王。新猴王的選擇方法是:讓N只候選猴子圍成一圈,從某位置起順序編號為1~N號。從第1號開始報數,每輪從1報到3,凡報到3的猴子即退出圈子

交換類排序與選擇類排序-7-3 冒泡法排序 20

將N個整數按從小到大排序的氣泡排序法是這樣工作的:從頭到尾比較相鄰兩個元素,如果前面的元素大於其緊隨的後面元素,則交換它們。通過一遍掃描,則最後一個元素必定是最大的元素。然後用同樣的方法對前N−1個元素進行第二遍掃描。依此類推,最後只需處理兩個元素,就完成了對N個數的排序。 本題要求對任意給

7-5 鞍點 10 c語言解答

7-5 找鞍點 (10 分) 一個矩陣元素的“鞍點”是指該位置上的元素值在該行上最大、在該列上最小。 本題要求編寫程式,求一個給定的n階方陣的鞍點。 輸入格式: 輸入第一行給出一個正整數n(1≤n≤6)。隨後n行,每行給出n個整數,其間以空格分隔。 輸出格式: 輸出在一行中按照“

7-6 素因子分解20

7-6 素因子分解(20 分) 給定某個正整數 N,求其素因子分解結果,即給出其因式分解表示式 N=p​1​​​k​1​​​​⋅p​2​​​k​2​​​​⋯p​m​​​k​m​​​​。 輸入格式: 輸入long int範圍內的正整數 N。 輸出

7-2 簡易連連看 20

軟體學院第十四次訓練 205 分 程式設計題共 9 小題,共計 205 分 剩餘時間: 712:22:51 剩餘時間: 712:22:51 程式設計題 7-2 簡易連連看 (20 分) 本題要求實現一個簡易連連看遊

7-60 刪除重複字元 20

7-60 刪除重複字元 (20 分) 本題要求編寫程式,將給定字串去掉重複的字元後,按照字元ASCII碼順序從小到大排序後輸出。 輸入格式: 輸入是一個以回車結束的非空字串(少於80個字元)。