Bài 187 : Hãy liệt kê các vị trí mà giá trị tại các vị trí đó là giá trị dương nhỏ nhất trong mảng một chiều các số thực

Tải Code về máy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include<stdio.h>
#include<conio.h>
#include<float.h>
#define MAX 100
#define bool

void nhapmang(float a[MAX],int &n)
{
 do{
  printf("Nhap vao so phan tu cua mang:n=");
  scanf("%d",&n);
  if(n<1||n>MAX)
   printf("So phan tu ban nhap vao khong hop le!Xin vui long nhap lai!\n");
  else
   break;
 }while(n<1||n>MAX);
 for(int i=0;i<n;i++)
 {
  printf("Nhap vao a[%d]=",i);
  scanf("%f",&a[i]);
 }
}

void xuatmang(float a[MAX],int n)
{
 for(int i=0;i<n;i++)
 {
  printf("%16f",a[i]);
 }
 printf("\n");
}

void lietkegiatrivavitri(float a[MAX],int n)
{
 int vitri=0,Co;
 bool Co=false;
 float min=FLT_MAX;
 for(int i=0;i<n;i++)
 {
  if(a[i]>=0&&a[i]<min)
  {
   min=a[i];
   Co=true;
  }
 }
 if(Co==true)
  printf("\nGia tri duong nho nhat la:%f",min);
 else
  printf("\nTrong mang khong ton tai gia tri duong");
 printf("\nGia tri duong nho nhat ton tai o cac vi tri la:");
 for(int i=0;i<n;i++)
 {
  if(a[i]==min)
  {
   vitri=i;
   printf("%4d",vitri);
  }
 }
}

void main()
{
 float a[MAX];
 int n,tieptuc;
 quaylai:nhapmang(a,n);
 printf("\n>>>>>>>>>>>>>>>>>>MANG VUA NHAP LA:<<<<<<<<<<<<<<<<<<<<<<\n");
 xuatmang(a,n);
 lietkegiatrivavitri(a,n);
 printf("\nBan co muon tiep tuc chay chuong trinh khong ? Neu co bam phim C,nguoc lai bam bat ky 1 phim nao khac de ket thuc\n");
 tieptuc=getch();
 if(tieptuc=='c'||tieptuc=='C')
  goto quaylai;
}

Nhận xét

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

Bài 22 : Viết chương trình nhập vào số nguyên dương n gồm 5 chữ số,kiểm tra xem các chữ số n có phải là số đối xứng hay không ?

Bài Tập Cây Nhị Phân Tìm Kiếm

Bài 17 : Viết chương trình nhập số nguyên lớn N (khai báo:long N) có k chữ số