Listing
LOGIKA PROGRAM
#include <stdio.h> adalah penyisipan file standard input output header untuk program ini, berguna untuk menjalankan perintah input dan output yang ada pada program ini seperti printf atau scanf. #include <conio.h> adalah penyisipan file header yang berguna untuk membuat teks antarmuka pengguna seperti clrscr atau getch. Program utama pada program ini adalah void main(). Struct mhs merupakan grup variabel yang dijadikan menjadi satu record. Jadi variabel npm yang bertipe data char(9 karakter maksimal), nama yang bertipe data char(25 karakter maksimal), kelas yang bertipe data char(30 karakter maksimal), serta variabel UTS, UAS, dan total yang bertipe data integer merupakan grup variabel yang menjadi satu ke dalam variabel record pmhs (maksimal 10 record)
Clrscr() berguna untuk mengkosongkan layar (blank screen). Selanjutnya program meminta inputan meminta banyaknya elemen record yang diinput. scanf("%d",&n); ini adalah scanner inputan, %d artinya membaca inputan desimal, lalu &n artinya variabel n bertindak sebagai variabel inputannya.
Lanjut ke perulangan for (i=0; i<n; i++), perulangan for disini akan melakukan perulangan sampai batas nilai variabel i lebih kecil dari variabel n, selama nilai variabel i belum mencapai batas maka nilai variabel akan bertambah 1 poin di setiap perulangannya. printf("Input Data Mahasiswa Ke-%d\n",i+1); akan mencetak kalimat tersebut beserta dengan nilai desimal yang ada pada variabel i.
Listing di atas
merupakan inputan untuk variabel nama, npm, dan kelas. Setiap inputan akan
dibaca oleh %s dalam bentuk tipe data string lalu inputan tersebut akan
tersimpan di dalam variabel nama, lalu variabel npm, serta variabel kelas.
Listing di atas merupakan
inputan untuk variabel UTS dan UAS. Terdapat juga proses perhitungan dari
variabel total terhadap variabel UTS dan variabel UAS. Di sini setiap inputan
akan dibaca oleh %d dalam bentuk tipe data desimal lalu inputannya akan
disimpan ke dalam variabel UTS dan UAS.
Penginputan-penginputan
data record variabel pmhs ini akan berlangsung selama batas perulangan variabel
i mencapai kurang dari 1 poin nilai variabel n.
Terdapat fungsi
getch yang berguna untuk membaca sebuah karakter dengan sifat karakter yang
dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang
dimasukan tidak akan ditampilkan di layar. Listing di atas ini merupakan
pencetakan dari data record pmhs yang telah diinput sebelumnya. Clrscr() akan
mengkosongkan kembali layar yang telah diisi oleh permintaan inputan data
sebelumnya. Dengan menggunakan perulangan for (i=0; i<n; i++) ini data yang
telah diinput sebelumnya akan dicetak secara berurutan sesuai dengan urutan
perulangan for variabel i. gotoxy(2, i+6); printf("%d.",i+1); ini
berguna untuk mencetak No., nomernya ini akan di cetak dengan koordinat x=2
(kolom) dan y=nilai variabel i + 6 (baris), dan %d membaca nilai desimal
variabel i, nilai variabel i yang dicetak + 1 poin. gotoxy(7, i+6);
printf("%s",pmhs[i].nama); ini berguna untuk mencetak Nama, namanya
ini akan di cetak dengan koordinat x=7 (kolom) dan y=nilai variabel i + 6
(baris), dan %s membaca nilai yang ada di variabel nama. gotoxy(22, i+6);
printf("%s",pmhs[i].npm); ini berguna untuk mencetak NPM, npmnya ini
akan di cetak dengan koordinat x=22 (kolom) dan y=nilai variabel i + 6 (baris),
dan %s membaca nilai yang ada di variabel npm. gotoxy(33, i+6);
printf("%s",pmhs[i].kelas); ini berguna untuk mencetak Kelas,
kelasnya ini akan di cetak dengan koordinat x=33 (kolom) dan y=nilai variabel i
+ 6 (baris), dan %s membaca nilai yang ada di variabel kelas. gotoxy(45, i+6);
printf("%d\n",pmhs[i].UTS); ini berguna untuk mencetak nilai UTS,
nilai UTSnya ini akan di cetak dengan koordinat x=45 (kolom) dan y=nilai
variabel i + 6 (baris), dan %d membaca nilai yang ada di variabel UTS.
gotoxy(51, i+6); printf("%d\n",pmhs[i].UAS); ini berguna untuk
mencetak nilai UAS, nilai UASnya ini akan di cetak dengan koordinat x=51
(kolom) dan y=nilai variabel i + 6 (baris), dan %d membaca nilai yang ada di
variabel UAS. gotoxy(57,i+6); printf("%d\n",pmhs[i].total); ini
berguna untuk mencetak nilai total, nilai totalnya ini akan di cetak dengan
koordinat x=57 (kolom) dan y=nilai variabel i + 6 (baris), dan %d membaca nilai
yang ada di variabel total.
OUTPUT PROGRAM
Saat penginputan
data
Saat pencetak data
keseluruhan
Tidak ada komentar:
Posting Komentar