1. Trang chủ
  2. » Công Nghệ Thông Tin

Tìm số hoàn thiện nhỏ nhất

5 491 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 30,11 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trang 1

Bài 383: Tìm số hoàn thiện nhỏ nhất

#include<stdio.h>

#include<conio.h>

#include<math.h>

#define MAX 100

void NhapMang(int a[][MAX], int &dong, int &cot)

{

//Nhập số dòng

do

{

printf("\nNhap vao so dong: ");

// Cách tà đạo: scanf("dong =%d",&dong); // Lúc nhập phải viết thêm chữ ( dong = ) ở khung console

scanf("%d",&dong);

if(dong < 1 || dong > MAX)

{

printf("\nSo dong khong hop le Xin kiem tra lai!");

}

}while(dong < 1 || dong > MAX);

//Nhập số cột

do

{

Trang 2

printf("\nNhap vao so cot: ");

scanf("%d",&cot);

if(cot < 1 || cot > MAX)

{

printf("\nSo cot khong hop le Xin kiem tra lai!");

}

}while(cot < 1 || cot > MAX);

for(int i = 0; i < dong; i++)

{

for(int j = 0; j < cot; j++)

{

printf("\nNhap a[%d][%d] = ", i, j);

scanf("%d", &a[i][j]);

} }

}

void XuatMang(int a[][MAX], int dong, int cot)

{

for(int i = 0; i < dong; i++)

{

for(int j = 0; j < cot; j++)

{

Trang 3

printf("%4d", a[i][j]);

} printf("\n\n");

}

}

int KiemTraHoanThien(int n)

{

int tong = 0;

for(int i = 1; i < n; i++)

{

if(n % i == 0)

{

tong += i;

} }

if(tong == n)

{

return 1;

}

return 0;

}

int TimSoHoanThienDauTien(int a[][MAX], int dong, int cot)

{

for(int i = 0; i < dong; i++)

Trang 4

for(int j = 0; j < cot; j++)

{

if(KiemTraHoanThien(a[i][j]) == 1)

{

return a[i][j];

} }

}

return -1;

}

int TimSoHoanThienNhoNhat(int a[][MAX], int dong, int cot)

{

int SoHoanThienMin = TimSoHoanThienDauTien(a, dong, cot);

if (SoHoanThienMin == -1)

{

return -1;

}

for (int i = 0; i < dong;i++)

{

for (int j = 0; j < cot; j++)

{

if (KiemTraHoanThien(a[i][j]) == 1)

{

SoHoanThienMin = (SoHoanThienMin < a[i][j]) ? SoHoanThienMin : a[i][j];

Trang 5

} }

}

return SoHoanThienMin;

}

int main()

{

int a[MAX][MAX], dong, cot;

NhapMang(a, dong, cot);

XuatMang(a, dong, cot);

int SoHoanThienMin = TimSoHoanThienNhoNhat(a, dong, cot);

printf("\nSo hoan thien nho nhat = %d", SoHoanThienMin);

getch();

return 0;

}

Ngày đăng: 22/10/2016, 20:06

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w