Algoritma Pemrograman – Membagi Nominal Ke Pecahan Menggunakan PHP

Kali ini saya iseng-iseng menulis blog tentang algoritma. Saya juga iseng-iseng mengerjakan salah satu soal pada algoritma pemrograman menggunakan PHP, yaitu bagaimana cara memecah nominal sejumlah uang menjadi pecahan uang (secara fisik). Misal ada uang  Rp 2500, maka uang tersebut terbagi menjadi uang apa saja? Secara gampang kita akan menjawab 1 lembar 2 ribuan dan 1 koin 5 ratus.  Tapi bagaimana menerjemahkan ke dalam bahasa pemrograman? Saya akan mencoba memecahkannya menggunakan PHP.

Kode PHP-nya kurang lebih sebagai berikut:

<?php
$duit = array(100000, 50000, 20000, 10000, 5000, 2000, 1000, 500, 200, 100, 50, 25, 10, 5, 1);
$nom = 98875;
echo "<h4>Nominal : " . $nom . "</h4>";
for ($i = 0; $i < count($duit); $i++) {
 if ($nom % $duit[$i] < $nom) {
 echo floor($nom / $duit[$i]) . " -> " . $duit[$i] . "<br/>";
 $nom = $nom % $duit[$i];
 }
}
?>

Oke, kita bahas kode diatas.

$duit = array(100000, 50000, 20000, 10000, 5000, 2000, 1000, 500, 200, 100, 50, 25, 10, 5, 1);
$nom = 98875;
echo "<h4>Nominal : " . $nom . "</h4>";
  1. $duit berisi array dari semua uang yang ada di negara kita, disini saya buat sampai 1 Rupiah.
  2. $nom adalah nominal uang yang akan kita pecah.
  3. echo … Menampilkan Nominal uang yang akan dipecah.
for ($i = 0; $i < count($duit); $i++) {
 if ($nom % $duit[$i] < $nom) {
 echo floor($nom / $duit[$i]) . " -> " . $duit[$i] . "<br/>";
 $nom = $nom % $duit[$i];
 }
}

Disini menggunakan looping (for) pada array $duit untuk melakukan cek terhadap nominal, jadi lopping akan meng-eksekusi sebanyak jumlah pecahan uang (15 kali). Kemudian dicocokkan dengan nominal, jika sisa pembagian (modulo/modulus) dengan uang di array pertama lebih kecil, maka akan dilanjutkan ke array berikutnya dan seterusnya sampai pencocokan selesai. Pencocokan ini dimulai dari uang yang paling besar. Sehingga cara kerjanya seperti ini:

Misal Nominalnya adalah 98875.

  • Cek apakah modulus (98875/100000) < 98875? Tidak, maka akan dilanjutkan ke Uang berikutnya tanpa mencetak tulisan.
  • Cek apakah modulus (98875/50000) < 98875? Ya, hasil bagi=1 dan sisa=48875, cetak 1 x 50000. Simpan sisa ke $nom.
  • Cek apakah modulus (48875/20000) < 48875? Ya, hasil bagi=2 dan sisa=8875, cetak 2 x 20000. Simpan sisa ke $nom.
  • Cek apakah modulus (8875/10000) < 8875? Tidak, Lanjut ke Uang berikutnya. $nom masih tetap.
  • Cek apakah modulus (8875/5000) < 8875? Ya, hasil bagi=1 dan sisa=3875. Cetak 1 x 5000. Simpan sisa ke $nom.
  • Cek apakah modulus (3875/2000) < 3875? Ya, hasil bagi=1 dan sisa=1875. Cetak 1 x 2000. Simpan sisa ke $nom.
  • Cek apakah modulus (1875/1000) < 1875? Ya, hasil bagi=1 dan sisa=875. Cetak 1 x 1000. Simpan sisa ke $nom.
  • Cek apakah modulus (875/500) < 875? Ya, hasil bagi=1 dan sisa=375. Cetak 1 x 500. Simpan sisa ke $nom.
  • Cek apakah modulus (375/200) < 375? Ya, hasil bagi=1 dan sisa=175. Cetak 1 x 200. Simpan sisa ke $nom.
  • Cek apakah modulus (175/100) < 175? Ya, hasil bagi=1 dan sisa=75. Cetak 1 x 100. Simpan sisa ke $nom.
  • Cek apakah modulus (75/50) < 75? Ya, hasil bagi=1 dan sisa=25. Cetak 1 x 50. Simpan sisa ke $nom.
  • Cek apakah modulus (25/25) < 25? Ya, hasil bagi=1 dan sisa=0. Cetak 1 x 25. Simpan sisa ke $nom.
  • Karena nilai $nom adalah 0, maka Uang berikutnya pasti tidak akan muncul.

Penasaran dengan hasilnya? Silahkan dicoba sendiri. Semoga bermanfaat.

Advertisement

Autostart VPN Windows

Pada kali ini saya akan membahas tutorial bagaimana cara membuat VPN Windows supaya otomatis start (Auto Start) pada saat Windows dijalankan (Logon). Untuk membuat windows otomatis logon menggunakan user tertentu silahkan baca di postingan saya terdahulu. Pada tutorial ini saya menggunakan 2 cara, yaitu menggunakan shortcut VPN dan menggunakan bat RASDIAL yang keduanya diletakkan pada startup.

Sebelum membuat koneksi autostart VPN, pastikan anda sudah membuat Koneksi VPN yang sudah bisa dikoneksikan secara manual. Ada beberapa setting yang harus dilakukan pada Koneksi VPN Kita. Klik kanan Nama VPN -> Properties ->Tab Options. Uncheck seperti pada gambar.

VPN Properties Options

1. Menggunakan Shortcut.

  • Buka start menu -> All Programs
  • Cari Folder Startup -> Klik kanan
  • Pilih Open All User

Startup All Program

  • Kemudian akan muncul Windows Explorer baru. Biarkan terbuka.
  • Sekarang buka Control Panel -> View By : Large Icons
  • Pilih Network & Sharing Center
  • Klik Change Adapter Settings
  • Pilih Koneksi VPN yang telah anda buat, kemudian klik kanan dan drag n’ drop pada startup.

Drag n drop

  • Pilih “Create Shortcut Here”
  • Sampai disini kita sudah selesai membuat auto start VPN

Tapi kadang cara tersebut diatas tidak berhasil, saya juga kurang tahu dimana letak kesalahannya. Oleh karena itu kita bisa menggunakan opsi yang kedua, yaitu menggunakan rasdial.

2. Menggunakan Rasdial

Secara manual kita bisa menggunakan rasdial langsung dari command prompt. Dengan cara mengetik:


rasdial "Nama Koneksi VPN" username password

Selanjutnya kita akan membuat rasdial tersebut pada startup, caranya hampir sama dengan cara diatas.

  • Buka folder startup seperti cara diatas.
  • Pada folder ini buatlah file bat dengan nama “vpn_connect.bat” (klik kanan -> new -> text document)
  • Jangan lupa untuk mengganti ekstensi file menjadi “bat”
  • Isi file tersebut dengan kode diatas tadi:

rasdial "Nama Koneksi VPN" username password

  • Simpan file.

Untuk melihat hasil dari tutorial tersebut, silahkan restart komputer.

Terima kasih sudah menyempatkan diri untuk mampir di blog saya 🙂

Menyimpan Streaming Radio Online Lewat Konsole/Terminal pada Linux [Ubuntu]

Ada banyak sekali Lagu-lagu bagus yang diputar pada Radio streaming diinternet, salah satunya adalah radio favoritku yaitu http://sc1.streamingchoice.com:4180/
Langkah yang harus dilakukan begitu simpel:
Instal streamripper terlebih dahulu dengan cara:

sudo apt-get install streamripper

Masukkan password root jika diminta.
Setelah streamripper terinstal dengan baik, lakukan langkah berikut:

streamripper [URL]

Contoh:

streamripper htt*p://sc1.streamingchoice.com:4180/

Hasil dari streaming dapat dilihat pada direktori dimana anda mengetikkan perintah tadi, untuk mengubah direktori penyimpanan anda bisa mengganti direktorinya sebelum mengetikkan perintah tadi, misalkan ingin meletakkan pada direktori musik, maka tinggal mengetikkan:

cd /home/nama-user/Music/

kemudian baru ketikkan perintah-perintah diatas. Untuk mencari stasiun radio favorit anda, bisa melihat pada shoutcast.com, disitu ada ratusan bahkan ribuan stasiun radio online (streaming).

Wow Gampang banget ya…!!!
Ternyata linux tidak menakutkan kan???
Selamat mencoba…!!!

%d bloggers like this: