Бронирование отелей на Hotellook

Mencari Nilai Maksimum/Minimum dengan Bahasa C

Program untuk mencari nilai maksimu/minimum ini merupakan kombinasi dari penggunaan array dan fungsi.

Bagan alur program yang akan dibuat ditampilkan pada gambar di bawah ini :

Mencari Nilai Maksimum atau Minimum Dengan Bahasa C - Gambar1

 

Mencari Nilai Maksimum atau Minimum Dengan Bahasa C - Gambar2

Pencarian nilai maksimum

Pada prinsipnya alur dari pencarian nilai maksimum adalah sebagai berikut:

  1. Dideklarasikan sebuah variabel bernama maks.
  2. Variabel maks tersebut diisi dengan data pertama dari kumpulan data.
  3. Program melakukan iterasi dengan looping for menuju ke data kedua, ketiga, dan seterusnya hingga data terakhir.
  4. Setiap kali iterasi, data dibandingkan dengan nilai data variabel maks. Jika data pada langkah iterasi tersebut nilainya lebih besar daripada data variabel maks, maka data tersebut dimasukkan ke variabel maks menggantikan data sebelumnya.

Program mencari nilai maksimum diberikan pada listing 1.

Listing 1. Mencari nilai maksimum

 

#include <stdio.h>

#define N 20

 

float maks();

int i;

 

main()

{

 

float nmaks, bil[N];

int jml;

clrscr();

printf("Program mencari nilai maksimum \n\n");

  

// input jumlah bilangan

  

printf("Jumlah bilangan (maks 20) : ");

scanf("%d",&jml);

printf("\n");

  

// input data

  

for (i=0;i<jml;i++)

{

   printf("Bilangan ke %d : ",i+1);

   scanf("%f",&bil[i]);

}

  

// mencari nilai maksimum

 

nmaks = maks(bil,jml);

 

// mencetak nilai maksimum

  

printf("Nilai maksimum adalah : %f",nmaks);

}

 

// fungsi menentukan nilai maksimum

 

float maks(X,k);

float X[];

int k;

{

float maksimum = X[0];

for (i=0;i<k;i++)

{

   if (X[i] > maksimum)

   {

               maksimum = X[i];

   }

}

return maksimum;

}

Jika program tersebut dijalankan, salah satu kemungkinan hasilnya adalah sebagai berikut:

Program mencari nilai maksimum

Jumlah bilangan (maks 20) : 5

Bilangan ke 1 : 12

Bilangan ke 2 : 65

Bilangan ke 3 : 32

Bilangan ke 4 : 73

Bilangan ke 5 : 49

Nilai maksimum adalah : 73.000000

Bandingkan dengan gambar di bawah ini :

Mencari Nilai Maksimum atau Minimum Dengan Bahasa C - Gambar3

Pencarian nilai minimum

Pada prinsipnya alur dari pencarian nilai minimum sama dengan pencarian nilai maksimum, hanya ada sedikit perbedaan pada pembandingan nilai variabel. Alurnya adalah sebagai berikut:

  1. Dideklarasikan sebuah variabel bernama min.
  2. Variabel min tersebut diisi dengan data pertama dari kumpulan data.
  3. Program melakukan iterasi dengan looping for menuju ke data kedua, ketiga, dan seterusnya hingga data terakhir.
  4. Setiap kali iterasi, data dibandingkan dengan nilai data variabel min. Jika data pada langkah iterasi tersebut nilainya lebih kecil daripada data variabel min, maka data tersebut dimasukkan ke variabel min menggantikan data sebelumnya.

Program mencari nilai minimum diberikan pada listing 2.

Listing 2. Mencari nilai minimum

 

#include <stdio.h>

#define N 20

 

float min();

int i;

 

main()

{

 

float nmin, bil[N];

int jml;

clrscr();

printf("Program mencari nilai minimum \n\n");

           

// input jumlah bilangan

           

printf("Jumlah bilangan (maks 20) : ");

scanf("%d",&jml);

printf("\n");

           

// input data

           

for (i=0;i<jml;i++)

{

            printf("Bilangan ke %d : ",i+1);

            scanf("%f",&bil[i]);

}

           

// mencari nilai minimum

 

nmin = min(bil,jml);

 

// mencetak nilai minimum

           

printf("Nilai minimum adalah : %f",nmin);

}

 

// fungsi menentukan nilai minimum

 

float min(X,k)

float X[];

int k;

{

float minimum = X[0];

for (i=0;i<k;i++)

{

            if (X[i] < minimum)

            {

                        minimum = X[i];

            }

}

return minimum;

}

Salah satu kemungkinan hasil apabila program tersebut dijalankan adalah sebagai berikut:

Program mencari nilai minimum

Jumlah bilangan (maks 20) : 5

Bilangan ke 1 : 12

Bilangan ke 2 : 65

Bilangan ke 3 : 32

Bilangan ke 4 : 73

Bilangan ke 5 : 49

Nilai minimum adalah : 12.000000

Bandingkan dengan gambar di bawah ini :

Mencari Nilai Maksimum atau Minimum Dengan Bahasa C - Gambar4

Nah, dari sini kita bisa belajar untuk menggabungkan kedua program tersebut menjadi satu program dengan misalnya ditambah suatu kondisi agar pengguna program memilih apakah akan mencari nilai maksimum atau nilai minimum. Jika yang ingin dicari adalah nilai maksimum, maka program akan menjalankan fungsi maks(), sedangkan bila yang ingin dicari adalah nilai minimum, maka program akan menjalankan fungsi min().

Namun bisa juga dalam satu program yang sama, output yang dihasilkan adalah nilai maksimum dan minimum sekaligus.

Semoga Bermanfaat dan Selamat mencoba.

loading...
loading...