1. Pembahasan UNGUIDED
Program akan meminta inputan menu yang akan dipilih. User harus memilih
menu pertama terlebih dahulu, jika memilih menu lain terlebih dahulu maka
program akan menampilkan tulisan “Maaf silahkan inisialisasikan data terlebih
dahulu...” dan melakukan perulangan kembali ke menu.
Jika user menginputkan angka 1 pada menu, maka program akan melakukan
perulangan inisialisasi. Mengisi nip, berat, umur dengan -1 serta nama dan
jenispenyakit dengan “-”, kemudian program akan memanggil fungsi buat_pasien
yang ditampung dalam variable P dengan indeks i dengan syntax P[i] =
buat_pasien(nip,nama,umur,berat,jenispenyakit);. Kemudian program
akan menampung angka 1 kedalam variable statusInisialisasi dan akan
menampilkan tulisan “Data berhasil diinisialisasi”.
Jika user menginputkan angka 2 pada menu, maka program akan melakukan
proses pemilihan. Jika variable statusInisialisasi bernilai 0, maka program akan
kembali ke menu utama karena user harus memilih menu pertama terlebih dahulu.
Jika variable statusInisialisasi bernilai 1, maka program akan melakukan
perulangan dan masuk ke proses pemilihan yang memanggil fungsi cekKosong
dengan syntax cekKosong(P[i])==1. Dalam fungsi cekKosong, fungsi akan
mereturnkan nilai 1 jika P.nip bernilai -1 dan mereturnkan nilai 0 jika P.nip tidak
bernilai 1. Jika dalam proses pemilihan, cekKosong tidak bernilai 1, maka program
akan terus melakukan perulangan sampai cekKosong bernilai 1. Jika sudah bernilai
1 maka program akan melakukan proses penginputan data seperti nip, nama, umur,
berat dan jenis penyakit. Kemudian program akan memanggil fungsi buat_pasien
yang ditampung dalam variable P dengan indeks i dengan syntax P[i] =
buat_pasien(nip,nama,umur,berat,jenispenyakit);. Kemudian program
akan menampilkan tulisan “Data berhasil diinput”.
Jika user menginputkan angka 3 pada menu, maka program akan melakukan
proses pemilihan yang memanggil fungsi isEmpty dimana isEmpty akan melakukan
proses perulangan dan mereturnkan nilai 1 jika P.nip tidak sama dengan -1 dan 0
2. jika sama dengan -1. Proses pemanggilan fungsi isEmpty dengan syntax
if(isEmpty(P)==0) Jika isEmpty mereturnkan nilai 1, maka program akan
kembali ke menu utama karena user harus memilih menu pertama terlebih dahulu.
Jika isEmpty mereturnkan nilai 0, maka program akan meminta inputan nip yang
akan dihapus dan ditampung dalam variable temp. Kemudian program akan
melakukan perulangan untuk mencari nip yang sesuai dengan temp, jika nip dan
temp cocok maka program akan mengisi nip, berat, umur dengan -1 serta nama dan
jenispenyakit dengan “-”, kemudian program akan memanggil fungsi buat_pasien
yang ditampung dalam variable P dengan indeks i dengan syntax P[i] =
buat_pasien(nip,nama,umur,berat,jenispenyakit);. Kemudian program
akan menampilkan tulisan “Data Berhasil Terhapus”.
Jika user menginputkan angka 3 pada menu, maka program akan melakukan
proses pemilihan yang memanggil fungsi isEmpty dimana isEmpty akan melakukan
proses perulangan dan mereturnkan nilai 1 jika P.nip tidak sama dengan -1 dan 0
jika sama dengan -1. Proses pemanggilan fungsi isEmpty dengan syntax
if(isEmpty(P)==0). Jika isEmpty mereturnkan nilai 1, maka program akan
kembali ke menu utama karena user harus memilih menu pertama terlebih dahulu.
Jika isEmpty mereturnkan nilai 0, maka program akan melakukan proses
perulangan dan melakukan pemilihan yang memanggil fungsi tampilPasien yang
berguna untuk menampilkan data pasien dengan syntax tampilPasien(P[i]);
3. Pembahasan Tugas
Program akan manggil prosedur createEmpty yang berfungsi untuk proses
inisialisasi dengan syntax createEmpty(P); Kemudian program akan meminta
inputan menu yang akan dipilih. Jika user menginputkan angka 1 maka program
akan meminta inputkan nama pemilik rumah yang ditampung dalam array
P[i].pemilik dan P[i].norumah akan menampung hasil dari proses i+1. Kemudian
program akan menampilkan tulisan “Program berhasil diinputkan”.
Jika user menginputkan 2 maka program akan meminta inputan nomor
rumah dan akan ditampung dalam variable temp. kemudian program akan
melakukan proses pemilihan, jika temp sama dengan P[i].norumah, maka program
akan menset nilai P[i].norumah=0 dan P[i].pemilik = -. Menu ini berfungsi untuk
menghapus data.
Jika user menginputkan 3, maka program akan melakukan perulangan yang
akan menampilkan posisi rumah yang sudah terisi. Program juga akan
menampilkan nama pemilik rumah tersebut.