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

Hãy tìm giá trị trong mảng các số thực gần giá trị x nhất

4 1,9K 10

Đ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 28,77 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 156: Hãy tìm giá trị trong mảng các số thực gần giá trị x nhất

#include<stdio.h>

#include<conio.h>

#include<math.h>

#define MAX 100

void nhap (float 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("%f", &a[i]);

}

}

void xuat(float a[], int n)

Trang 2

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

{

printf("%8.3f", a[i]);

}

}

// Tạo mảng b chứa các khoảng cách từ x đến các giá trị trong mảng a

void TaoMang(float a[], int n, float b[], int x)

{

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

{

b[i] = abs(x - a[i]);

}

}

// Tìm min của mảng b

float TimMin(float b[], int n)

{

int Min = b[0];

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

{

if (b[i] < Min)

{

Min = b[i];

}

Trang 3

return Min;

}

void XuatKetQua(float a[], float b[], int n)

{

printf("\nGia tri trong mang gan gia tri x nhat la: ");

int Min = TimMin(b, n);

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

{

if (b[i] == Min)

{

printf("%8.3f", a[i]); // Đối chiếu qua mảng a, in phần tử ở vị trí thứ i thỏa ĐK }

}

}

int main()

{

int n;

float a[MAX];

float b[MAX];

nhap(a, n);

xuat(a, n);

float x;

Trang 4

printf("\nNhap vao gia tri x: ");

scanf("%f", &x);

TaoMang(a, n, b, x);

printf("\nKhoang cach tu x = %.3f den cac phan tu trong mang la:\n", x); xuat(b, n);

XuatKetQua(a, b, n);

getch();

return 0;

}

Ngày đăng: 19/10/2016, 22:32

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