Logika Pemrograman: Mencari Nilai Minimum, Maksimum dan Rata-rata


Logika Pemrograman: Mencari Nilai Minimum, Maksimum dan Rata-rata – Menjadi seorang programmer bukan sekedar mengetik baris-baris program, bukan pula sekedar copy-paste baris program, tetapi juga harus paham logikanya lalu kemudian diterapkan pada bahasa pemrograman. Tulisan berikut ini akan membantu teman-teman programmer muda tentang logika dasar dalam mencari nilai minimum, maksimum dan rata-rata dari suatu deret bilangan.

Pada dasarnya bahasa pemrograman telah menyediakan built-in function untuk melakukan hal ini, tetapi sekali lagi tulisan ini akan membantu teman-teman dalam belajar logika mencari nilai minimum, maksimum ataupun rata-rata dari suatu deret bilangan.

Logika pemrograman kali ini akan ditulis dengan menggunakan bahasa pemrograman PHP.

Mencari Nilai Minimum

Terdapat deret bilangan dalam bentuk array $deret, dimana deret angkanya adalah 9, 13, 20, 3, 47, 12 dan 20, lalu kita akan mencari nilai minimumnya (terkecil) dari deret bilangan tersebut. Tentu kita tahu bahwa nilai minimumnya adalah 3, tetapi bagaimana kita implementasikan ke dalam bahasa pemrograman?

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];

Pada dasarnya komputer itu bodoh, dia hanya dapat melakukan perbandingan terhadap 2 angka saja, maka mula-mula kita berikan asumsi bahwa nilai terkecil adalah angka pertama pada deret bilangan tersebut.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$min   = $deret[0];

Lalu angka pertama yang kita anggap sebagai nilai minimum tersebut akan kita bandingkan dengan angka disebelahnya, lagi dan lagi hingga angka terakhir. Karena dilakukan secara berulang-ulang, maka disini kita bisa gunakan perulangan (looping).

Setiap kali melakukan perulangan, kita akan memeriksa apakah angka pada perulangan tersebut lebih kecil dari angka yang kita asumsikan paling kecil tadi?

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$min   = $deret[0];

for ($i=1; $i < count($deret); $i++) { 
	if ($deret[$i] < $min) {
		$min = $deret[$i];
	}
}

Jika ternyata ada angka yang lebih kecil dari angka terkecil pada asumsi kita tadi, maka ganti nilai minimum (terkecil) dengan angka yang baru, begitu seterusnya. Setelah selesai (perulangan telah habis), maka selanjutnya ialah menampilkan angka terkecilnya.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$min   = $deret[0];

for ($i=1; $i < count($deret); $i++) { 
	if ($deret[$i] < $min) {
		$min = $deret[$i];
	}
}
echo "Nilai minimum adalah: {$min}";

Mencari Nilai Maksimum

Mencari nilai maksimum (angka terbesar) pada deret bilangan juga memiliki logika yang sama, hanya saja operator perbandingannya kita balik. Karena sama, maka akan langsung saya tampilkan full code nya.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$max   = $deret[0];

for ($i=1; $i < count($deret); $i++) { 
	if ($deret[$i] > $max) {
		$max = $deret[$i];
	}
}
echo "Nilai maksimum adalah: {$max}";

Mencari Nilai Rata-rata

Logika untuk mencari nilai rata-rata ialah dengan melakukan penjumlahan dari seluruh angka pada deret bilangan tersebut, lalu kemudian dibagi dengan banyaknya angka. Pada contoh ini kita juga akan gunakan deret angka yang sama.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];

Mula-mula kita akan beri nilai totalnya adalah 0 sehingga menjadi seperti ini.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$total = 0;

Sama seperti pada proses perbandingan sebelumnya, komputer tidak dapat melakukan proses penjumlahan sekaligus, dia hanya akan menjumlahkan 2 angka saja setiap kali penjumlahan. Untuk itu, kita akan menjumlahkan setiap angka pada deret hingga deret angka terakhir dengan menggunakan perulangan. Hasil penjumlahan dari setiap perulangan akan disimpan pada variabel $total.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$total = 0;

for ($i=0; $i < count($deret); $i++) { 
	$total = $total + $deret[$i];
}

Setelah didapat nilai totalnya, kita tentu harus membaginya dengan banyaknya angka pada deret untuk mendapatkan nilai reratanya. Kita bisa gunakan fungsi count(), sehingga menjadi:

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$total = 0;

for ($i=0; $i < count($deret); $i++) { 
	$total = $total + $deret[$i];
}
$rerata= $total / count($deret);

Dan terakhir adalah menampilkan jumlah total dan rerata-nya.

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$total = 0;

for ($i=0; $i < count($deret); $i++) { 
	$total = $total + $deret[$i];
}
$rerata= $total / count($deret);
echo "Total angka adalah {$total} dan rata-ratanya adalah {$rerata}";

Atau kalau ingin menampilkan hasil rata-ratanya hanya 2 digit dibelakang koma, bisa gunakan fungsi round()

<?php 
$deret = [9, 13, 20, 3, 47, 12, 20];
$total = 0;

for ($i=0; $i < count($deret); $i++) { 
	$total = $total + $deret[$i];
}
$rerata= round($total / count($deret), 2);
echo "Total angka adalah {$total} dan rata-ratanya adalah {$rerata}";

Nah, itulah tadi logika dasar pemrograman dalam menentukan nilai minimum, maksimum dan rata-rata dari suatu deret bilangan yang diimplementasikan pada bahasa pemrograman PHP. Jauh sebelumnya saya juga pernah menuliskannya dengan bahasa pemrograman Visual Basic pada link ini. Semoga bermanfaat bagi teman-teman programmer muda 🙂

Tinggalkan Komentar

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.