Menentukan Nilai Max, Min Menggunakan C-Free/Turbo C++
Assalamu’alaikum…
Dalam
Pembahasan kali ini, saya ingin memberikan sedikit pengetahuan tentang Menentukan Nilai Max, Min Menggunakan
C-free atau Turbo C++ . Disini saya akan memberikan Listing Program, Dan
Logika Programnya + Output-nya, oke deh langsung saja ya disimak.. :
1. Listing Program
#include<stdio.h>
#include<conio.h>
int a[100];
int max, min;
void maxmin(int i, int j)
{
int max1, min1, mid;
if(i == j)
{
max = min = a[i];
}
else if(i == j-1) {
if(a[i] > a[j]) {
max = a[i];
min = a[j];}
else {
max = a[j];
min = a[i]; }}
else {
mid = (i+j)/2;
maxmin(i, mid);
max1 = max;
min1 = min;
maxmin(mid+1, j);
if(max <
max1)
max = max1;
if(min >
min1)
min = min1;}}
int main() {
int i, num;
printf("\n\t\t\tMaximum Dengan
Minimum\n\n");
printf("Masukkan Banyak Angka:
");
scanf("%i", &num);
printf("\nMasukkan Angka-angkanya:
\n");
for(i=0; i<num; i++) {
scanf("%i",
&a[i]);
}
max = a[0];
min = a[0];
maxmin(0, num-1);
printf("Maksimum Angka: %i\n",
max);
printf("Minimum Angka: %i",
min);
getch();
return 0;
}
2. Logika Program
#include<stdio.h>
#include<conio.h>
=> Kodingan diatas
merupakan Kodingan awal dari perintah bahasa C, yang berfungsi untuk memasukkan
suatu library yang ada melalui header file ke dalam program yang akan kita
buat. Pada baris tersebut tidak akan dieksekusi
melainkan akan menjadi indicator untuk compiler.
int a[100];
int max, min;
=> Kodingan diatas
merupakan pendeklarasian variable , yang akan digunakan untuk mencari nilai maksimum
dengan variable max dan minimum dengan variable min. Dan int a[100] yaitu suatu batasan angka yang akan diinput.
void maxmin(int i, int j) {
=> Kodingan diatas
merupakan Sebuah bentuk deklarasi dari fungsi dengan tipe void. Kodingan ini
penting karena fungsi ini didefinisikan diluar fungsi utama.
int max1, min1, mid;
=> Kodingan diatas
merupakan Didalam void maxmin, dideklarasikan
variable max1, min1, dan mid dengan tipe integer.
int max1, min1, mid;
if(i == j)
{
max = min = a[i];
}
-------------------------------------------------- 1
else if(i == j-1) {
if(a[i] > a[j]) {
max = a[i];
min = a[j];}
else {
max = a[j];
min = a[i]; }}
----------------------------------------------------- 2
else {
mid = (i+j)/2;
maxmin(i, mid);
max1 = max;
min1 = min;
maxmin(mid+1, j);
if(max <
max1)
max = max1;
if(min >
min1)
min = min1;}}
=> Kodingan diatas
merupakan Jika variable I sama dengan j
maka max = min = a[i] (1) , dan jika i sama dengan j dikurang 1 ada 2 cabang.
Cabang 1, jika a dengan array variable 1 lebih besar a dengan array variable j
maka max = a[i]; dan min = a[j]; dan cabang 2, jika a dengan array variable 1
lebih kecil a dengan array variable j maka max = a[j] dan min = a[i]; (2). Bisa
juga dibilang ini Kodingan untuk mencari nilai maksimum dan minimum yang
menggunakan percabangan, dan prosedur pencariannya dengan melakukan iterasi dan
perbandingan disetiap data yang ada.
int main() {
int i, num;
printf("\n\t\t\tMaximum Dengan
Minimum\n\n");
printf("Masukkan Banyak Angka:
");
scanf("%i", &num);
printf("\nMasukkan Angka-angkanya:
\n");
for(i=0; i<num; i++) {
scanf("%i", &a[i]);
}
=> Kodingan diatas
merupakan main program, digunakan untuk mencetak dan melakukan inputan data
oleh user.
max = a[0];
min = a[0];
maxmin(0, num-1);
printf("Maksimum Angka: %i\n",
max);
printf("Minimum Angka: %i",
min);
getch();
return 0;
}
=> DiKodingan ini
variable max dam min di panggil untuk dicetak , yang di perintah sebelumnya
sudah dieksekusi dan diakhiri dengan getch(), dan return 0.
3. Output Program
Pada saat program
dijalankan (CTRL+F9), akan menampilakn seperti gambar dibawah :
Saya contohkan, saya input angka 4. Kemudian
masukkan angka-angka yang akan kita inginkan , saya contohkan : 7, 2, 1, dan 9.
Lalu akan muncul angka maksimum = 9 dan angka minimum = 1. Seperti gambar
dibawah :
Mungkin itu saja penjelasan Mengenai Cara Menentukan Nilai Max, Min Menggunakan C-free atau Turbo C++ apa
yang telah saya pelajari di Lab Tehnik Informatika Gunadarma Mata Kuliah Perancangan Analisis Algoritma, semoga
bermanfaat.. terima kasih.. ^^
Wah kalau soal pemograman saya angkat tangan mas alias nggak bisa mengikuti, soalnya nggak punya background sama sekali tentang IT. Hanya bisa nyimak saja dan berkata artikel nya bagus banget :D
ReplyDeleteterima kasih mba ririn, terima kasih juga atas kunjungannya.. ^^
Deletewah rjin update mulu nih :D
ReplyDeletehahaa.. cuma iseng aja les.. :D
Deletewah bakal calon programer neh
ReplyDeleteaamin... terima kasih kang atas kunjungannya.. ^^
Deletesukses slalu ya.. ^^