









Dear Kanjeng Pembaca sekalian,… berikut ini adalah program case study Eat Contest… dimana menggunakan struct dan pointer …!!! So sebenernya ini nanti akan berguna ketika programming database… setidaknya sebagai basic… jadi kalau sudah paham tentang struct… bisa dijadikan pijakan untuk programming web / third generation language dengan kombinasi connecting to database …!!! berikut ini soalnya … monggo dibaca dulu …
Sebagai gambaran input nya seperti apa dan output yang diharapkan seperti apa bisa dilihat pada gambar berikut …!!! So terlihat pada baris pertama angka 4 menyatakan banyaknya pemain.. so dalam hal ini akan ada 4 pemain …!!! Kemudian angka 10 itu nanti akan dikalikan dengan angka kue yang bisa dimakan oleh seorang pemain …!!! So misalnya Narto 5, maka Narto bisa makan 5 x 10 = 50 eaten … kira-kira gitu …!!! Sampai disini jelas … ???
Kemudian setelah masing-masing diinput… berikutnya adalah memasukkan 2 nama … jadi kalau ada 4 pemain… maka akan dimasukkan dalam 2 baris… dimana masing-masing ada 2 nama …!!! Jadi kalau case nya nama Upil dan Narto dimasukkan… maka nilai total nya = nilai Upil ( 6 x 10) + nilai narto (5 x 10) = 110 …!!! Demikian pula Saske dan Ipul = Saske ( 3 x 10) + Ipul (4 x 10) = 70 …!!! Karena nilai Upil dan Narto tertinggi yaitu 110 dibandingkan Saske dan Ipul… maka ouputnya keuar Upil & Narto Win! Baris berikutnya keluar Total Eaten : 110 …!!! Gampang khan …???
Naaagh logiknya gimana …??? Monggo dilihat pada program diatas… pertama-tama didefinisikan dulu menggunakan Struct … dalam hal ini database yang terdiri dari pointer (field) … name, eat dan total_eat …!!! Kemudian, juga dibikin struct untuk banding…. dimana berisi pointer (field) pemain1 dan pemain2, serta total_dua. Total Dua ini nantinya gabungan 2 angka … tergantung pemain nya …!!!
Berikutnya mulai deh dimasukin input angka dalam hal ini n (berapa banyak pemain) dan min (nilai untuk setiap menit). Setelah itu kita gunakan struct database tadi untuk membikin array p[n], dimana n adalah input tadi berapa pemain yang akan terlibat …!!! Naaagh setelah itu tinggal bikin looping for… yang akan menanyakan nama pemain dan eat… sekaligus sebelum nanyakan berikutnya langsung ngitung total_eat dengan cara mengalikan eat * min …!!! So tahap 1 ini sudah selesai …!!!
Berikutnya adalah kita menghitung berapa pasangan… jadi kalau ada 4 pemain tentu ada 2 pasang… so gampangnya banyaknya pemain dibagi 2 … so disinilaagh ada variabel o = n /2; …!!! Kalau pemain nya ganjil gimana… ?? Itu salah soal… gampang aja… so asumsi ganjil gak ada …!!! Berikutnya memasukkan nama-nama tersebut… sekaligus kita masukin nilai awal yaitu total_dua adalah nol …!!! Berikut nya dibikin looping untuk memasukkan total nya … yaitu dengan nested loop … dengan membandingkan pemain itu jadi anggota tidak pada pasangan … dengan menggunakan fungsi strcmp() …!!! Jika masuk anggota… tambahkan total_eatnya pada total_dua begitu seterusnya …!!! Proses ini akan memasukkan nilai pasangan … !!! So tahap 2 ini beres … berarti tahap berikutnya tinggal ambil nilai pasangan terbesar …!!!
Berikutnya adalah tinggal ngurutin… dimana record yang paling atas itu adalah yang paling besar … kembali dilakukan nested loop … !!! Naagh untuk memindahkan atau mengurutkan diperlukan variabel … dalam hal ini didefinisikan sebagai v_pemain1, v_pemain2 dan v_total_dua …!!! Langkah berikut nya adalah proses pengurutan… so ini mirip memindahkan 2 gelas ada air minum… so butuh 1 gelas kosong sebagai transit …!!! Berikut nya adalah tinggal cetak… karena urutan teratas sudah diletakkan pada array ke-0,… maka tinggal munculkan saja… !!!
So… setelah di compile,… eksekusi program, kemudian masukkan variabel-variable tersebut… dan hasilnya sama seperti output yang diharapkan …!!! So dari sini bisa dikatakan program yang dibuat dapet ‘green’ … kalau mau menggunakan 1 loop instead 2 loop untuk mengambil nilai terbesar… juga bisa …!!! So banyak cara menuju Roma… yang penting program konsisten mengeluarkan output yang benar … nanti persoalannya adalah efisien atau tidak… mirip seperti bepergian … ada yang direct ada yang stop over.. tapi resultnya sama …!!! Last,.. demikian pembahasan tentang eaten case study… semoga bermanfaat… and never give up guyyys …!!! Ciaooo 😀
Sangat Membantu !! 😀