Created
October 3, 2022 04:02
-
-
Save anonemae/f2edefab07d78d417ba074b219f1db55 to your computer and use it in GitHub Desktop.
Tugas PSD Single linkedlist
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Program hapusSimpul; | |
| uses crt; | |
| Type | |
| simpul = ^data; | |
| data = Record | |
| nik : string; | |
| namaKaryawan : string; | |
| divisi : string; | |
| alamat : string; | |
| next : simpul; | |
| end; | |
| Var | |
| awal,akhir,bantu,hapus : simpul; | |
| jawab : char; | |
| no : integer; | |
| hapusElement : string; | |
| Begin | |
| clrscr; | |
| writeln('-------------------------------------------------------------------------'); | |
| writeln(' INPUT KARYAWAN BARU '); | |
| writeln('-------------------------------------------------------------------------'); | |
| awal := nil; | |
| jawab := 'y'; | |
| while jawab in ['y','Y'] Do | |
| Begin | |
| new(bantu); | |
| write('NIK : ');readln(bantu^.nik); | |
| write('Nama Karyawan : ');readln(bantu^.namaKaryawan); | |
| write('Divisi : ');readln(bantu^.divisi); | |
| write('Alamat : ');readln(bantu^.alamat); | |
| writeln; | |
| write('Tambah data lagi [Y/N] : ');readln(jawab); | |
| writeln; | |
| if awal = nil Then | |
| Begin | |
| bantu^.next := nil; | |
| awal := bantu; | |
| akhir := bantu; | |
| End | |
| Else | |
| Begin | |
| akhir^.next := bantu; | |
| bantu^.next := nil; | |
| akhir := bantu; | |
| end; | |
| End; | |
| writeln(' DAFTAR KARYAWAN BARU '); | |
| writeln('---------------------------------------------------------------'); | |
| writeln('NO | Nik | NAMA KARYAWAN | DIVISI | ALAMAT '); | |
| writeln('---------------------------------------------------------------'); | |
| no := 1; | |
| bantu := awal; | |
| write(no,' | '); | |
| write(bantu^.nik,' | '); | |
| write(bantu^.namaKaryawan,' | '); | |
| write(bantu^.divisi,' | '); | |
| write(bantu^.alamat,' | '); | |
| writeln; | |
| while bantu^.next <> nil Do | |
| Begin | |
| bantu := bantu^.next; | |
| no := no + 1; | |
| write(no,' | '); | |
| write(bantu^.nik,' | '); | |
| write(bantu^.namaKaryawan,' | '); | |
| write(bantu^.divisi,' | '); | |
| write(bantu^.alamat,' | '); | |
| writeln; | |
| end; | |
| writeln; | |
| writeln; | |
| writeln('-------------------------------------------------------------------------'); | |
| writeln(' HAPUS DATA KARYAWAN '); | |
| writeln('-------------------------------------------------------------------------'); | |
| write('Nik karyawan yang ingin di hapus : ');readln(hapusElement); | |
| If awal = NIL then | |
| Writeln('Searai berantai masih kosong !') | |
| Else if (hapusElement = awal^.nik) then | |
| Begin | |
| new(hapus); | |
| hapus := awal; | |
| Dispose(hapus); | |
| awal := awal^.next; | |
| End | |
| Else | |
| Begin | |
| Bantu := Awal; | |
| new(hapus); | |
| while bantu^.next <> nil do | |
| begin | |
| if bantu = akhir then | |
| begin | |
| hapus := bantu^.next; | |
| bantu^.next :=nil; | |
| dispose (hapus) | |
| end | |
| else | |
| begin | |
| if bantu^.next^.nik = hapusElement then | |
| begin | |
| hapus :=bantu^.next; | |
| bantu^.next := hapus^.next; | |
| dispose (hapus); | |
| end | |
| else | |
| begin | |
| bantu := bantu^.next; | |
| end; | |
| end; | |
| end; | |
| End; | |
| Writeln; | |
| Writeln; | |
| writeln(' DAFTAR KARYAWAN BARU '); | |
| writeln('---------------------------------------------------------------'); | |
| writeln('NO | Nik | NAMA KARYAWAN | DIVISI | ALAMAT '); | |
| writeln('---------------------------------------------------------------'); | |
| no := 1; | |
| bantu := awal; | |
| write(no,' | '); | |
| write(bantu^.nik,' | '); | |
| write(bantu^.namaKaryawan,' | '); | |
| write(bantu^.divisi,' | '); | |
| write(bantu^.alamat,' | '); | |
| writeln; | |
| while bantu^.next <> nil Do | |
| Begin | |
| bantu := bantu^.next; | |
| no := no + 1; | |
| write(no,' | '); | |
| write(bantu^.nik,' | '); | |
| write(bantu^.namaKaryawan,' | '); | |
| write(bantu^.divisi,' | '); | |
| write(bantu^.alamat,' | '); | |
| writeln; | |
| end; | |
| readln; | |
| End. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
bng afkh kmuh anime?