2015-12-08 70 views
-1

我在將算法轉換爲C++代碼時會遇到問題,該代碼將顯示小於輸入數字的所有大量數字。我想創建一個程序,它將顯示所有數量少於輸入的數字。例如,如果我輸入的數字是19,控制檯應該輸出12和18.算法是這樣的。通過每個數字如何顯示小於給定數字的所有大量數字

  1. 掃描
  2. 檢查是否其豐富的數字
  3. 如果它是一個豐富的號碼,然後打印出來

我使用Microsoft Visual影城2013 IDE和編譯器支持C++ 11。

這是我的代碼到目前爲止

#include <iostream> 
using namespace std; 
int main() 
{ 
int number; 
cout << "Enter a number" << endl; 
cin >> number; 
for (int i = 1; i < number; i++) 
{ 
// Don't know what to put here 
} 
char inputCharacter; 
cin >> inputCharacter; 
return 0; 
} 
+2

請您詳細說明您的「豐富」是什麼意思? – Bathsheba

回答

0

我不知道,有什麼豐富的數字,但如果你的意思是這樣的:https://en.wikipedia.org/wiki/Abundant_number 那麼這可能會幫助您:

#include <iostream> 
using namespace std; 

int main() 
{ 
    int number; 
    cout << "Enter a number" << endl; 
    cin >> number; 

    for (int i = 1; i < number; i++) 
    { 
     int sum = 0; 
     for(int k = 1; k < i; k++) 
     { 
      if(i % k == 0) 
      { 
       sum += k; 
      } 
     } 

     if(sum > i) 
     { 
      cout << i << endl; 
     } 
    } 

    char inputCharacter; 
    cin >> inputCharacter; 
    return 0; 
} 

如果您需要關於該算法的任何解釋,只需要詢問它。

+0

做好他的功課 – bolov

0
int number; 
cout << "Enter a number" << endl; 
cin >> number; 

for (int i ==1; i<number; i++) 
{ 
    int temp =0; 
    for (int j ==1; j<i; j++) 
    { 
     if (i%j==0) 
     { 
      temp+=j; 
     } 
    } 
    if (temp>i) 
    { 
     cout<<j; 
    } 


} 

這使用模塊化部門,將積累所有數字,這些因素。 如果上面的回報爲1,我認爲它豐​​富...如果我有正確的想法豐富是什麼。

相關問題