Anda di halaman 1dari 9

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA II

Program Nilai Mahasiswa

Disusun oleh : Pratikto Sulthoni Hidayat 12/328222/DPA/00398

JURUSAN D3 KOMPUTER DAN SISTEM INFORMASI FAKULTAS SEKOLAH VOKASI UNIVERSITAS GAJAH MADA YOGYAKARTA 2012

I.

Soal
Buatlah program untuk menginputkan dan menyimpan NIM, nilai tugas, nilai UTS, dan nilai UAS. Lalu buatlah opsi pilihan untuk menampilkan semua data yang telah terurut berdasar nilai akhir, nilai tertinggi, nilai terendah dan nilai diatas 75. Nilai total sama dengan jumlah dari 25% nilai tugas, 30% nilai UTS, dan 45% nilai UAS.

II.

Pembahasan
A. Bagan Alir algoritma

Input data

sorting

Data terurut

K=1

Menu, Input kode, Kode(14)

K=4

Data >75

K=2 Data max

K=3 Data min

K=! 14 exit

B.

Source Code

Untuk membuat program tersebut kita membutuhkan pernyataan percabangan seperti if-else atau switch case pada bagian menu. Namun, program ini akan menggunakan pernyataan switch case. Selain itu , agar memperingkas program utama dibutuhkan subprogram. Subprogram pada program ini adalah input, sort, output, max, min, dan tuma. Keenam subprogram ini akan dijelaskan nanti. Berikut source code dari program utamanya.

Baris enam sampai dengan baris enam belas merupakan pendeklarasian variabel global yang digunakan dalam subprogram maupun program utama. Mhs adalah tipe bentukan record yang memiliki lima field yaitu nim, tgs, uas, ttl. Field nim, tgs, uts, dan uas yang nilainya akan diinputkan oleh user. Sedangkan field ttl akan diisi dengan nilai total. Nilai adalah tipe bentukan yang berisi array dari tipe bentukan mhs. Variabel nil adalah variabel bertipe nilai. Variabel ini akan diisi data-data yang diinputkan oleh user. Variabel i, j, k dan n merupakan variabel bertipe integer yang berfungsi sebagai indeks.

Baris ke tujuh belas sampai dengan baris ke tiga puluh adalah deklarasi dari fungsi input. Parameter dari fungsi ini adalah variabel nil dan n. variabel n berisi jumlah data yang akan diinputkan. Sedangkan variabel nil merupakan tempat dimana data akan disimpan. Variabel nil mempunyai field nim, tgs, uts, dan uas yang nilainya diinputkan oleh user. Sedangkan field ttl didapatkan dengan menjumlahkan 25% nilai tugas, 30% nilai UTS, dan 45% nilai UAS.

Baris ke-32 belas sampai dengan baris ke-38 adalah deklarasi dari fungsi sort. Parameter dari fungsi ini adalah variabel nil dan n. fungsi ini digunakan untuk mengurutkan data berdasarkan jumlah nilai total.

Baris ke-39 sampai dengan baris ke-44 merupakan pendeklarasian dari fungsi output. Parameter dari fungsi ini adalah variabel nil dan n. fungsi ini digunakan untuk menampilkan data yang sebelumnya telah diurutkan oleh fungsi sort.

Baris ke-46 sampai dengan baris ke-53 merupakan pendeklarasian dari fungsi max. Parameter dari fungsi ini adalah variabel nil dan n. fungsi ini digunakan untuk menampilkan data yang yang mempunyai nilai total paling besar. Karena data sudah disorting maka sudah pasti data maksimal berada pada urutan paling atas. Untuk menghindari nilai maksimal ganda maka kita harus mengecek apakah ada nilai yang sama nilainya dengan nilai maksimal pada tiap larik.

Baris ke-55 sampai dengan baris ke-62 merupakan pendeklarasian dari fungsi min. Parameter dari fungsi ini adalah variabel nil dan n. fungsi ini digunakan untuk menampilkan data yang yang mempunyai nilai total paling kecil. Karena data sudah disorting maka sudah pasti data minimal berada pada urutan paling bawah. Untuk menghindari nilai minimal ganda maka kita harus mengecek apakah ada nilai yang sama nilainya dengan nilai minimal pada tiap larik.

Baris ke-64 sampai dengan baris ke-70 merupakan pendeklarasian dari fungsi tuma. Parameter dari fungsi ini adalah variabel nil dan n. fungsi ini digunakan untuk menampilkan data yang yang mempunyai nilai total lebih besar dari 75.

Baris ke-73 dan baris ke-74 berfungsi untuk memanggil fungsi input dan fungsi sort.

Baris ke-78 sampai dengan baris ke-84 adalah statement untuk menampilkan keterangan kode menu.

Baris ke-87 berfungsi untuk menginputkan kode menu.

Baris ke-88 sampai dengan baris ke-98 adalah statement percabangan switch-case. Jika variabel k diisi dengan nilai satu maka akan melakukan fungsi output(nil, n), getch(), lalu kembali ke menu. Jika variabel k diisi dengan nilai dua maka akan melakukan fungsi max(nil, n), getch(), lalu kembali ke menu. Jika variabel k diisi dengan nilai tiga maka akan melakukan fungsi min(nil, n), getch(), lalu kembali ke menu. Jika variabel k diisi dengan nilai empat maka akan melakukan fungsi tuma(nil, n), getch(), lalu kembali ke menu. Selain dari itu program kan secara otomatis keluar.

C.

Hasil

Setelah dicompile maka hasilnya akan seperti tampak di bawah ini.

Masukan jumlah data lalu tekan enter.

Masukan data-datanya.

Lalu akan mencul menu.

Ketik 1 untuk menampilkan data.

Ketik 2 untuk menampilkan data tertinggi.

Ketik 3 untuk menampilkan data terendah.

Ketik 4 untuk menampilkan data lebih dari 75.

Ketik sembarang angka untuk keluar dari program.

Anda mungkin juga menyukai