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

Sắp xếp số hoàn thiện giảm dần nhưng giá trị khác giữ nguyên vị trí

4 491 4

Đ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 4
Dung lượng 29,12 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 259: Sắp xếp số hoàn thiện giảm dần nhưng giá trị khác giữ nguyên vị trí

#include<stdio.h>

#include<conio.h>

#include<math.h>

#define MAX 100

void nhap (int a[], int &n)

{

do

{

printf("\nNhap so phan tu: ");

scanf("%d", &n);

if(n <= 0 || n > MAX) {

printf("\nSo phan tu khong hop le Xin kiem tra lai !"); }

}while(n <= 0 || n > MAX);

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

{

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

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

}

}

Trang 2

void xuat(int a[], int n)

{

for(int i = 0; i < n; i++) {

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

}

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;

}

else

{

return 0;

}

Trang 3

void HoanVi(int &a, int &b)

{

int temp = a;

a = b;

b = temp;

}

void SapXepHoanThienGiamDan(int a[], int n)

{

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

{

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

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

if(KiemTraHoanThien(a[j]) == 1 && a[i] < a[j]) {

HoanVi(a[i], a[j]);

} }

} }

}

int main()

{

Trang 4

int n;

int a[MAX];

nhap(a, n);

xuat(a, n);

SapXepHoanThienGiamDan(a, n);

printf("\nMang sau khi sap xep hoan thien giam dan: "); xuat(a, n);

getch();

return 0;

}

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

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w