Qawiyyun Aziz
Npm : 0620101002
SOAL LATIHAN
1. Diketahui sebuah file sequential yang berisi data gaji pegawai selama satu tahun
dengan kondisi terurut berdasarkan NIP. Buatlah algoritma konsolidasi untuk
menentukan pendapatan rata-rata pegawai per bulan dan berapa pendapatan tertinggi
dari pegawai tersebut!
OPEN(File_gaji, Rekgaji)
IF EOF(file_gaji)
REPEAT
Jumlah_gaji ← 0
Current_Kategori ß RekNilai.NIM
REPEAT
Jumlah_gaji ← Jumlah_gaji + Rekgaji.gaji
READ(File_gaji,Rekgaji)
Judul : Algoritma Global Konsolidasi dengan Tanpa Separator (dengan penanganan file
kosong)
Kamus :
Algoritma :
NKuliah ← 0 { Init_Categ}
Current_NIM ← RekMhs.NIM
repeat
{ NIM != Current_NIM ,
{Terminasi_Categ}
CLOSE (ArsipMhs)
3. Diketahui sebuah file sequential (Dengan Separator) yang berisi data nilai
mahasiswa sebagai berikut ini :
NIM KODE_M NILAI SKS
K
# 0 0 0
# 0 0 0
01 1 A 3
01 2 B 2
# 0 0 0
02 1 C 3
02 2 B 2
02 3 D 3
# 0 0 0
# 0 0 0
03 3 A 3
# 0 0 0
…Dst
IF EOF(ArsipIn)
THEN
Kasus_mencari ipk {Mendefinisikan file mencari ipk}
ELSE
Inisialisasi_Seluruh_Kategori
REPEAT
WHILE (Not EOF) AND Separator(KeyIn)
DO
READ(ArsipIn,RekIn)
END WHILE
Inisialisasi_Kategori
WHILE (Not EOF) AND (Not Separator(KeyIn))
DO
Proses_Current_Kategori
READ(ArsipIn,RekIn)
END WHILE
Terminasi_Kategori
UNTIL EOF(ArsipIn)
Terminasi_Seluruh_Kategori {Menampilkan seluruh hasil}
CLOSE(ArsipIn)
END IF
4. Diketahui sebuah file sequential (Tanpa Separator) yang berisi data sebagai berikut
ini :
Kode_Sale Kode_Barang Tanggal_Jua Jumlah_Barang
s l
A01 01 11/11/2003 10
A01 03 12/11/2003 15
A01 05 12/11/2003 18
A02 03 10/11/2003 20
A02 05 10/11/2003 15
A03 01 11/11/2003 30
…Dst
Kamus :
SumNil ← 0 { Init_Categ}
Nbarang ← 0 { Init_Categ}
Current_barang ← Rekbarang.barang
repeat
{ barang != Current_barang ,
{Terminasi_Categ}
CLOSE (Arsipbarang)
5. Diketahui sebuah file sequential (Tanpa Separator) yang berisi data sebagai berikut
ini :
Kode_Barang Kode_Sales Tanggal_Jual Jumlah_Barang
01 A01 11/11/2003 10
01 A03 12/11/2003 15
03 A02 12/11/2003 18
03 A02 10/11/2003 20
05 A01 10/11/2003 15
05 A03 11/11/2003 30
…Dst
Algoritma :
OPEN (FileBarang.Rek)
If EOf (FileBarang)
Then Output “File Kosong”
Else
Repeat
while (Not EOF) and seperator (KeyIn) do
Read (FileBarang.Rek)
EndWhile
Jumlah.Barang ← 0
While (Not EOF) and (Not sepetaroe KeyIn) do
Read (FileBarang.Rek)
EndWhile
Close (FileBarang)