解决问题: 1、取余、循环 2、循环中拿出因子叠加 3、把加完的和与原数 判断
遇到的问题: 在双层循环中各种输出逻辑,拿到输出值之后思考为什么会这么输出,为什么没有得到想要的值,反复琢磨实现逻辑
代码:
#include<iostream> using namespace std; void get_number() { for (int num = 2; num <= 1000; num++) { int sum = 0; for (int i = 1; i <= (num / 2); i++) { if (num % i == 0) { //cout << i <<" "; sum += i; //cout << sum << endl; } } if (sum == num) { cout << sum << endl; //"(完数)==================================" << endl; } } } int main() { cout << "1000以内的完数有:" << endl; get_number(); system("pause"); return 0; }OK,这就是今天的每日一练啦,前几日的每日一练有点忙,太瓜皮了,没咋做好,就暂时没有分享。下次一定!!!
