Số hoàn hảo

Đề bài:
Viết chương trình cho phép nhập vào hai số nguyên dương và tìm tất cả các số hoàn hảo(là số có tổng các ước số nhỏ hơn nó bằng chính nó) (nếu không tồn tại số nào thì in ra 0)
INPUT
1 100
OUTPUT

6 28
Giải:


#include<iostream>
using namespace std;
int n,m;

void input() {
 cin >> n;
 cin >> m;
}

bool hhao(int x) {
 int tong = 0;
 for(int i = 1; i < x; i++) {
  if(x%i==0)
   tong = tong + i;
 }
 if( tong == x )
  return true;
 return false;
}

int main() {

 input();
 int dem = 0;
 if(n<=m) {
  for(int i = n; i <= m; i++)
   if(hhao(i)) {
    dem++;
    cout << i <<" ";
   }
 }
 if(n>m) {
  for(int i = m; i <= n; i++)
   if(hhao(i)) {
    cout << i <<" ";
    dem++;
   }
 }
 if(dem == 0)
  cout << "0";
}

Nhận xét

Bài đăng phổ biến từ blog này

Đổi chỗ chữ số đầu tiên và chữ số cuối cùng của một số

Chuyển đơn vị đo nhiệt độ C và F

Tìm số đẹp (lộc phát)