Download - PRAKTIKUM VI VB.docx

Transcript
Page 1: PRAKTIKUM VI VB.docx

PRAKTIKUM VI

1. Judul Materi / Pokok Bahasan : Variabel Array dan Sorting (Pengurutan Data)2. Tujuan Intruksional Khusus : Mahasiswa dapat membuat program dengan menggunakan

variabel array dan menggunakannya untuk proses sorting.3. Jumlah Pertemuan : 1 kali ( 2x50 menit)4. Pengetahuan Prasyarat : Mahasiswa harus memahami statement DIM dan memahami

metode pengurutan data (sorting).5. Teori Dasar :

Variabel Array

Variabel Array atau variabel tataan atau variabel berindeks adalah variabel yang mempunyai susunan beberapa nilai didalam satu nama variabel. Variabel Array dapat berdimensi dari 1 dimensi sampai dengan 255 dimensi. Nilai-nilai didalam variabel array ini ditunjuk oleh suatu indeks atau subscript. Misalnya variabel tataan berdimensi satu dengan nama variabelnya X( I ) dengan I adalah indeks atau subscript dari array ini. Untuk nilai I dari 1 sampai dengan n, maka nilai elemen ke 1 dari aray atau variabel tatanan ini dapat dituliskan X( 1 ), nilai elemen ke 2 dapa t dituliskan X( 2 ) dan seterusnya sampai dengan X( n ). Untuk array berdimensi 2 dengan nama variabel x( I, J ) dengan I dan J adalah subscript atau indeksnya, maka nilai elemen baris ke 1 kolom ke 1 dapat dituliskan X( 1, 1), nilai elemen baris ke 1 kolom ke 2 dapat dituliskan x( 1, 2 ) dan seterusnya.

Untuk tiap-tiap dimensi, BASIC hanya menyediakan tempat untuk nilai sebanyak 10 buah elemen. Bila lebih dari 10 buah elemen. Bila lebih dari 10 buah elemen untuk tiap-tiap variabel tataan, maka harus disebutkan terlebih dahulu pada statemen DIM. Misalnya variabel tataan A berdimensi satu mempunyai 4 buah nilai elemen, yaitu A(1), A(2), A(3), A(4), maka statement DIM tidak perlu digunakan. Akan tetapi untuk variabel tataan A berdimensi satu ini, misalnya mempunyai 11 buah elemen, yaitu A(1), A(2), sampai dengan A(11), maka statemen DIM perlu digunakan dan ditulis DIM(11).Jadi statement DIM untuk memberitahukan ke komputer untuk mempersiapkan tempat yang diminta untuk array/indeks.

Contoh :

10 DIM X(15), A$(25)

artinya variabel X meminta 15 kotak/tempat dan variabel A$ sebanyak 25 kotak/tempat.

Untuk variabel array 2 dimensi, bentuk statement DIM X(15,15) akan disediakan kotak/tempat memori didalam komputer sebanyak 15x15 buah.

X(1,1) X(1,2) ….. X(1,15)

X(2,1) X(2,2) ….. X(2,15)

…. …...   ….

X(15,1) X(15,2) …… X(15,15)

Didalam program Basic berlaku pula bahwa untuk variabel array 2 dimensi yang mempunyai tatanan kurang dari 10x10 tidak perlu dipakai pernyataan DIM.

Contoh 1 :

Page 2: PRAKTIKUM VI VB.docx

10 FOR I = 1 TO 4

1. READ NILAI(I)

1. TOTAL=TOTAL+NILAI(I)

40 NEXT I

50 RATA=TOTAL/4

60 PRINT"RATA-RATA =";RATA

70 DATA 6,8,9,3

Nilai-nilai yang digunakan untuk dihitung nilai rata-ratanya masih disimpan di memori dan kalau masing-masing nilai ini ingin dikeluarkan lagi masih dapat dilakukan, sebab tersimpan pada nama-nama variabel NILAI(1), NILAI(2), NILAI(3), NILAI(4).

Coba buktikan dengan menambahkan satu baris program ini:

80 PRINT NILAI(1);NILAI(2);NILAI(3);NILAI(4)

Contoh 2 :

Bandingkanlah program dicontoh 1 dengan program dicontoh 2 ini yang tidak menggunakan variabel array.

10 FOR I = 1 TO 4

20 READ NILAI

30 TOTAL=TOTAL+NILAI

40 NEXT I

50 RATA=TOTAL/4

60 PRINT"RATA-RATA =";RATA

70 DATA 6,8,9,3

Nilai rata-rata juga bisa keluar, tetapi masing-masing nilai tidak bisa dikeluarkan lagi, karena menggunakan satu nama variabel yang sama yaitu nilai yang bukan berupa variabel tataan. Nilai yang dikandung variabel NILAI terakhir adalah nilai yang terakhir saja, yaitu bernilai 3.

Coba buktikan dengan menambahkan satu baris program ini:

80 PRINT NILAI;NILAI;NILAI;NILAI

Contoh 3 :

10 READ NILAI1,NILAI2,NILAI3,NILAI4

20 TOTAL=NILAI1+NILAI2+NILAI3+NILAI4

Page 3: PRAKTIKUM VI VB.docx

30 RATA=TOTAL/4

40 PRINT"RATA-RATA =";RATA

50 DATA 6,8,9,3

Bila semua nilai setelah akhir dari proses masih diinginkan tersimpan, kalau tidak menggunakan variabel array, maka nama variabel harus berbeda, yaitu pada contoh 3, berupa nama variabel NILAI1,NILAI2,NILAI3,NILAI4

Coba buktikan dengan menambahkan satu baris program ini:

80 PRINT NILAI1;NILAI2;NILAI3;NILAI4

Contoh 4 :

100 DIM G$(10,10)

110 FOR I = 1 TO 5

120 FOR J = 1 TO 4

130 READ G$(I,J)

140 PRINT G$(I,J),

150 NEXT J

160 PRINT

170 NEXT I

180 DATA MAX,DOSEN,30,SEMARANG

190 DATA IWAN,MAHASISWA,20,KENDAL

200 DATA SLAMET RAHARAJA,BAAK,35,BANTUL

210 DATA AGUS,BAU,40,MOJOKERTO

220 DATA WIDYASARI,SEKRETARIS,25,DEMAK

Contoh Program diatas digunakan untuk membuat tabel dari data string dengan dimensi maksimum 10x10 (10 baris 10 kolom). Untuk memperbesar dimensi ini, statemen DIM pada baris 100 harus disesuaikan.

Pada contoh ini matrik string G$( ) mempunyai dimensi 5x4, yang digunakan untuk menuliskan nama, status, umur dan alamat. Karena berdimensi 5x4, maka dalam deklarasi data harus disediakan paling sedikit 20 data. Kalau jumlahnya kuran dari 20, komputer akan menghentikan eksekusi karena error. Dan apabila lebih dari 20, kelebihannya akan diabaikan.

Pengurutan Data ( Sorting )

Teknik Sorting ini dapat digunakan untuk mengurutkan data urut dari kecil ke besar maupun dari besar ke kecil baik unutk data numerik atau alphabetik.Teknik sorting ini sangat banyak sekali caranya, tetapi yang sering digunakan dan relatip mudah yaitu metode "Bubble Sort" dan "Straight Selection".

Page 4: PRAKTIKUM VI VB.docx

Metode Bubble Sort

Seperti gelembung ("bubble") yang timbul ke permukaan air, metode ini juga menimbulkan angka terbesar dan menaruhnya pada akhir urutan, mengatur sampai urut dari kecil sampai besar. Untuk metode sorting ini, semua data dibacakan terlebih dahulu ke omputer dan disimpan di "memori komputer", kemudian pengurutan baru dilakukan.

Contoh 5 :

10 REM * SORTING MENGURUTKAN DATA *

15 REM * METODE BUBBLE SORT *

20 CLS

30 LOCATE 2,4:INPUT "BANYAK BILANGAN YANG DIURUTKAN : ", N

35 DIM BIL(N),Y(N)

40 PRINT

50 LOCATE 4,4:PRINT "INPUT BILANGAN YG AKAN DIURUTKAN : "

60 FOR I = 1 TO N STEP 1

70 LOCATE 4+I,4:PRINT" BILANGAN KE – ";I;" : "

80 LOCATE 4+I,22:INPUT "",BIL( I )

90 Y( I ) = BIL( I )

100 NEXT I

110 PRINT

120 CLS

130 PRINT "DATA SEBELUM URUT : "

1. FOR I = 1 TO N2. PRINT BIL( I );3. NEXT I4. PRINT:PRINT5. PRINT "LANGKAH PENGURUTAN : "6. FOR J= 1 TO N-17. FOR I= 1 TO N-J8. IF BIL( I ) < BIL( I+1 ) THEN 1519. TUKAR=BIL( I )10. BIL( I ) = BIL( I+1 )11. BIL( X+1 ) = TUKAR12. NEXT I13. PRINT "LANGKAH KE : "; J;" : "14. FOR K=1 TO N15. PRINT BIL(K);16. NEXT K17. PRINT18. NEXT J19. PRINT:PRINT"SETELAH URUT : "20. PRINT"DATA","URUT KECIL","URUT BESAR"21. FOR I= 1 TO N22. PRINT Y( I ),BIL( I ),BIL( N+1-I)23. NEXT I24. END

Page 5: PRAKTIKUM VI VB.docx

Bagaimana bila data yang hendak diurutkan bukan berupa data numerik, melainkan data alphabetik ? Apakah data alphabetik juga bisa diperbandingkan mana yang lebih kecil dan mana yang lebih besar?

Data alphabetik dapat dibandingkan sesuai dengan urutan nilai kode ASCIInya. Misalnya karakter "A" adalah bernilai lebih kecil dari karakter "B", karena nilai ekuivalen A untuk kode ASCII adalah 65 dan b adalah 66. Cara dan bentuk program untuk mengurutkan data alphabetik ini sama dengan data numerik, hanya nama variabelnya saja sebagai variabel string.

Contoh 6 :

10 REM * SORTING MENGURUTKAN ABJAD*

15 REM * METODE BUBBLE SORT *

20 CLS

30 LOCATE 2,4:INPUT "BANYAK ABJAD YANG DIURUTKAN : ", N

35 DIM ABAJD$(N),Y$(N)

40 PRINT

50 LOCATE 4,4:PRINT "INPUT ABJAD YG AKAN DIURUTKAN : "

60 FOR I = 1 TO N STEP 1

70 LOCATE 4+I,4:PRINT" ABJAD KE – ";I;" : "

80 LOCATE 4+I,22:INPUT "",ABJAD$ ( I )

90 Y$( I ) = ABJAD$( I )

100 NEXT I

110 PRINT

120 CLS

130 PRINT "DATA SEBELUM URUT : "

25. FOR I = 1 TO N26. PRINT ABJAD$( I );27. NEXT I28. PRINT:PRINT29. PRINT "LANGKAH PENGURUTAN : "30. FOR J= 1 TO N-131. FOR I= 1 TO N-J32. IF ABJAD$( I ) < ABJAD$( I+1 ) THEN 15133. TUKAR$=ABJAD$ ( I )34. ABJAD$( I ) = ABJAD$( I+1 )35. ABJAD$( X+1 ) = TUKAR$36. NEXT I37. PRINT "LANGKAH KE : "; J;" : "38. FOR K=1 TO N39. PRINT ABJAD$(K);40. NEXT K41. PRINT42. NEXT J43. PRINT:PRINT"SETELAH URUT : "44. PRINT"DATA","URUT KECIL","URUT BESAR"45. FOR I= 1 TO N46. PRINT Y$( I ),ABJAD$( I ),ABJAD$( N+1-I)47. NEXT I48. END

Page 6: PRAKTIKUM VI VB.docx

Untuk nomor baris 172, 173, dan 174 dapat diganti lebih singkat dengan menggunakan sebuah statemen SWAP, sebagai berikut :

173 SWAP ABJAD$( I ),ABJAD$( I+1 )

Metode Straight Selection

Metode ini sebenarnya kebalikan dari metode bubble sort. Metode seleksi langsung ini akan memilih nilai yang terkecil dan meletakkannya di urutan terkemuka. Nilai-nilai terkecil berikutnya akan diseleksi dan diletakkan diurutan setelah nilai terkecil pertama, kedua, dan seterusnya sampai akhirnya di dapat nilai yang urut dari kecil ke besar. Program berikut akan mengambil data yang sama dengan metode Bubble sort. Dari hasil output langkah-langkah pengurutan akan tampak perbedaan proses pengurutannya.

 

 

Contoh 7 :

10 REM * SORTING MENGURUTKAN DATA *

15 REM * METODE STRAIGHT SELECTION*

20 CLS

30 LOCATE 2,4:INPUT "BANYAK BILANGAN YANG DIURUTKAN : ", N

35 DIM BIL(N),Y(N)

40 PRINT

50 LOCATE 4,4:PRINT "INPUT BILANGAN YG AKAN DIURUTKAN : "

60 FOR I = 1 TO N STEP 1

70 LOCATE 4+I,4:PRINT" BILANGAN KE – ";I;" : "

80 LOCATE 4+I,22:INPUT "",BIL( I )

90 Y( I ) = BIL( I )

100 NEXT I

110 PRINT

120 CLS

130 PRINT "DATA SEBELUM URUT : "

1. FOR I = 1 TO N2. PRINT BIL( I );3. NEXT I4. PRINT:PRINT5. PRINT "LANGKAH PENGURUTAN : "6. FOR I= 1 TO N-17. FOR J= I+1 TO N8. IF BIL( I ) < BIL( J ) THEN 1519. TUKAR=BIL( I )10. BIL( I ) = BIL( J )11. BIL( J ) = TUKAR

Page 7: PRAKTIKUM VI VB.docx

12. NEXT J13. PRINT "LANGKAH KE : "; I ;" : "14. FOR K=1 TO N15. PRINT BIL(K);16. NEXT K17. PRINT18. NEXT I19. PRINT:PRINT"SETELAH URUT : "20. PRINT"DATA","URUT KECIL","URUT BESAR"21. FOR I= 1 TO N22. PRINT Y( I ),BIL( I ),BIL( N+1-I)23. NEXT I24. END

Perbedaan utama pada program dengan metode Bubble Sort tampak pada nomer baris 193, 194, 195. Pertama kali dibandingkan data pertama dengan data berikutnya dan data terkecil diletakkan pada urutan pertama. Jadi urutan pertama telah terisi oleh data terkecil, sehingga untuk proses selanjutnya urutan yang telah terisi data terkecil dari data yang dibandingkan, tidak perlu dibandingkan lagi. Pada nomer baris 195 nilai variabel Bil( I ) berisi nilai argumen I dari 1 sampai dengan N-1, sehingga untuk proses berikutnya, nilai argumen ini terus meningkat sampai N-1.

1. Latihan

Latihan 1

Bacalah data-data berikut dalam bentuk deret. DATA 16, 29, 900, 81, 127, 690, 735, 1005, 89, 1765. Hitunglah jumlahnya dan cari harga rata-ratanya. Output yang diminta adalah data-data diatas yang ditulis dalam bentuk tabel.

Latihan 2

Lihatlah data-data dibawah ini, kemudian buatlah program sorting dengan urutan keatas (ascending) dengan menggunakan teknik bubble sort dan straight selection sort. Bandingkan kecepatan kudeta teknik tersebut, manakah yang lebih cepat. Pembacaan data gunakan statemen READ-DATA.

77,78,2,3,6,1,34,78,45,34,67,31,65,47,38,33,12,22,77,39,10,30,20,43,17,23,98,56,74,86,55,65,34,87,98,31,12,43,23,65,66,90,1,3,6,7,88,66,76,12,45,45,33,33,27,37,79,49,38,17,57,97,35,63,64,86,34,67,89,21,65,76,87,98,45,38,78,7

6. Tugas

Ada sejumlah data yang tidak urut besarnya. Buatlah program untuk mengurutkan data tersebut dengan urutan naik ("ascending") dan urutan turun ("descending"). Diminta untuk menuliskan hasilnya pada setiap langkah. Hasil akhir ditulis tersendiri.

8. Sumber Kepustakaan

Edi Noersasongko, Ir.,M.Kom, Belajar Bahasa Basic Secara Mudah, Modul STMIK Dian Nuswantoro.

Jogiyanto, H.M, Teori dan Aplikasi Program Komputer Bahasa Basic, Andi Offset, Yogyakarta, 1992

F. Soesianto B.Sc.E, Ir., Eko Nugroho, Ir., P. Insap Santosa, Ir., Pemrograman Basic, Andi Offset, Yogyakarta, 1992

Ekabrata Yudhistyra, Algoritma dan Pemrograman Terstruktur Dengan Microsoft Basic, Elex Media Komputindo.

Leroy Finkel and Jerarld R. Brown, Data File Programming In Basic, John Willey & Sons, Inc, New York, 1989.

Page 8: PRAKTIKUM VI VB.docx

 

PRAKTIKUM VII

 

1. Judul Materi / Pokok Bahasan : File Sequential (File data berurutan)2. Tujuan Intruksional Khusus : Mahasiswa dapat membuat file, menuliskan data ke file,

menutup file, menampilkan data, menambah data, koreksi dan menghapus data, serta membuat program aplikasi dengan menggunakan akses data sequential.

3. Jumlah Pertemuan : 3 kali ( 6x50 menit)4. Pengetahuan Prasyarat : Mahasiswa harus memahami statemen Input, statemen Output.5. Teori Dasar :

Pengertian File Data

Pengertian file data yang ada disini, bisa diartikan sebagai suatu sarana yang bisa digunakan untuk menyimpan pelbagai macam data, dengan memperhatikan faktor kemudahan dan keamanan dalam hal mencari kembali data yang bersangkutan. Pengertian file juga bisa disamakan dengan pengertian sebuah filling kabinet yang berfungsi untuk menyimpan berbagai macam arsip. Pengertian arsip diatas, sebenarnya lebih sesuai kalau dikatakan sebagai data yang tertulis diatas selembar kertas. Selembar kertas inilah yang disebut sebagai arsip.

Berbeda dengan file program, file data semata-mata berisi data. Setiap file data terdiri atas sekumpulan record data. Dalam contoh data mahasiswa, file data berisi kumpulan record data mahasiswa dengan item-item nim, nama, dan alamat. Masing-masing item disebut field. Jadi kumpulan field membentuk record sedangkan kumpulan record membentuk sebuah file.

Basic menyediakan 2 jenis file data, yaitu :

1. File data berurutan (sequential file).2. File data acak (random access file).

Mengenai perbedaan dan persamaan antara 2 file data tersebut, bisa anda ketahui sendiri setelah mendapatkan materi kedua file tersebut.

Sequential File

o Membuka File Data Sequential

Sebelum sebuah file data digunakan, misalnya untuk menuliskan data ke dalamnya, membaca data dari dalamnya ataupun mengubah data-data tertentu; kita harus membukanya terlebih dahulu dengan pernyataan OPEN.

Sintaks / Cara Penulisan :

Cara I :

OPEN <modus>,[#]<nomor buffer>,<spesifikasi>

o Untuk membuka/menggunakan file data dengan nama <spesifikasi file>. Umumnya, suatu file data kita beri pengenal/ekstensi DAT untuk membedakannya dengan file lain.

Page 9: PRAKTIKUM VI VB.docx

o <modus> :

o Untuk file data berurutan (sequential data file)

"I" (Input) – file dibuka hanya untuk dibaca.

"O" (Output) – file dibuka hanya untuk ditulisi.

"A" (Append) – file dibuka untuk menambah record.

Jadi, pada suatu pernyataan OPEN, file data berurutan hanya dapat dibuka untuk dibaca atau ditulisi saja, dan tidak dapat berfungsi untuk kedua-duanya pada saat yang bersamaan. Jika kita membuka file data berurutan yang telah berisi data dalam modus "O", maka data lama pada file tersebut akan hilang.

Contoh :

100 OPEN "I", #1, "SISWA.DAT"

100 OPEN "O", #1, "SISWA.DAT"

100 OPEN "A", #1, "SISWA.DAT"

Cara II

OPEN <spesifikasi file> [FOR <modus>] AS [#] <nomor buffer>

o Arti dan fungsi dari <spesifikasi file>,<nomor buffer> dan < panjang record> sama seperti diterangkan diatas.

Contoh:

100 OPEN "SISWA.DAT" FOR OUTPUT AS # 1

100 OPEN "SISWA.DAT" FOR INPUT AS # 1

100 OPEN "SISWA.DAT" FOR APPEND AS # 1

o Menutup File Data

File data yang telah dibuka dan digunakan harus ditutup kembali, jika tidak digunakan lagi. Untuk keperluan ini digunakan pernyataan CLOSE.

Sintaks :

CLOSE [[#]<nomor buffer-1>[,[#]<nomor buffer-2>,…]]

o Menutup suatu nomor buffer dan memindahkan isi buffer ersebut ke dalam disket.o <nomor buffer> sesuai dengan nomor file data yang akan ditutup.

Contoh: 500 CLOSE #1,#2

Page 10: PRAKTIKUM VI VB.docx

o Untuk menutup seluruh file data yang telah dibuka, cukup digunakan pernyataan CLOSE tanpa nomor-nomor buffernya.

Contoh: 500 CLOSE

o Menulis/Merekam Data

Setelah file data berurutan ini dibuka, kita dapat, kita dapat menulis data ke dalamnya dengan pernyataan PRINT # atau WRITE #

Cara I :

Sintaks :

PRINT #<nomor buffer>, [USING<format string>;]<variabel-1>[<,/;><variabel-2>…..]

o Sama seperti ketentuan pada pernyataan PRINT biasa, namun penulisan dilakukan ke dalam disket.

o Bentuk/format ini digunakan jika berhubungan dengan high level language lainnya, misalnya Pascal, Fortran, Cobol dan paket program misalnya Dbase-II/III.

Cara II :

Sintaks :

WRITE # <nomor buffer>,<variabel-1>[,<variabel-2>…..]

o Berbeda dengan pernyataan PRINT #, pernyataan WRITE # secara otomatis memasukkan tanda koma (,) diantara item-item yang ditulis ke dalam disket sebagai tanda pemisah, serta mengapit semua item berupa string dengan tanda kutip. Bentuk atau format ini dikenal sebagai Comma Separated Value with double quotes (" ") delimiter.

o Bentuk format ini digunakan jika berhubungan dengan paket program lain, misalnya WordStar, Supercald, Lotus 123, maupun Dbase II/III.

o Pada kedua pernyataan PRINT# dan WRITE# diatas, <nomor buffer> adalah nomor buffer dari file data yang telah dibuka sebelumnya dan akan ditulis dengan data.

o Membaca Data

Setelah file data dibuka, data-data didalamanya dapat kita baca dengan menggunakan pernyataan INPUT #

Sintaks :

INPUT #<nomor buffer>,<variabel-1>[,<variabel-2>….]

o <Nomor buffer> adalah nomor file yang telah dibuka dan akan dibaca isinya.o <Var-1>,<var-2>,… adalah variabel-variabel yang akan menampung data-data yang

dibaca dari file data. Jenis Variabel yang digunakan harus sesuai dengan jenis data yang dibaca.

Basic menyediakan cara untuk memberitahukan kepada kita apakah record terakhir telah dibaca, atau dengan kata lain akhir file telah dicapai. Fungsi yang digunakan untuk maksud ini adalah fungsi EOF (End Of File).

Page 11: PRAKTIKUM VI VB.docx

Sintaks :

EOF (<nomor buffer>)

o Untuk menguji apakah kondisi akhir file telah dicapai.o Fungsi ini memberikan nilai –1(benar) jika telah dicapai akhir sebuah file data

berurutan dan memberikan nilai 0 (salah) jika akhir file data belum dicapai.

1. Contoh :

Contoh –1 (Isi Data Baru)

Buatlah program untuk membuat file data sequential yang bernama SISWA.DAT, dimana file data tersebut tiap recordnya terdiri dari field NIM, Nama Siswa, Nilai Siswa.

10 ‘ *** PROGRAM ISI DATA ***

15 OPEN "O", #1, "SISWA.DAT"

20 CLS

30 INPUT "Nomor Induk Mahasiswa : ",NIM$

40 INPUT "Nama Mahasiswa : ",NAMA$

50 INPUT "Nilai Mahasiswa : ",NILAI

60 WRITE #1, NIM$, NAMA$, NILAI

70 INPUT " ISI DATA LAGI [Y/T] : "

80 JAWAB$=INPUT$(1) : PRINT JAWAB$

90 IF JAWAB$="Y" OR JAWAB$="y" THEN GOTO 20

100 CLOSE #1

110 END

Contoh –2 (Cetak Data)

Buatlah program untuk membaca record-record yang sebelumnya telah kita simpan dalam file data SISWA.DAT

Hal yang perlu diperhatikan dalam membaca suatu file :

1. Jenis data yang dibaca harus sama dengan jenis variabel yang digunakan untuk membacanya.

2. Jumlah data yang dibaca tidak boleh melebihi jumlah data yang ada.

10 ‘ *** PROGRAM CETAK DATA ***

15 CLS

20 OPEN "I", #1, "SISWA.DAT"

30 WHILE NOT EOF(1)

Page 12: PRAKTIKUM VI VB.docx

1. INPUT #1, NIM$, NAMA$, NILAI

1. PRINT NIM$, NAMA$, NILAI

60 WEND

70 CLOSE #1

80 END

atau

10 ‘ *** PROGRAM CETAK DATA ***

15 CLS

20 OPEN "I", #1, "SISWA.DAT"

30 IF EOF(1) THEN CLOSE #1 : END

40 INPUT #1, NIM$, NAMA$, NILAI

1. PRINT NIM$, NAMA$, NILAI

60 GOTO 30

Contoh –3 (Tambah Data)

Penambahan record baru ke dalam file data berurutan yang telah berisi record dapat dilakukan dengan mudah, yaitu dengan menggunakan modus APPEND, sebagai berikut :

10 ‘ ******* PROGRAM TAMBAH DATA ********

15 OPEN "A", #1, "SISWA.DAT"

20 CLS

30 INPUT "Nomor Induk Mahasiswa : ",NIM$

40 INPUT "Nama Mahasiswa : ",NAMA$

50 INPUT "Nilai Mahasiswa : ",NILAI

60 WRITE #1, NIM$, NAMA$, NILAI

70 INPUT "TAMBAH DATA LAGI [Y/T] :

80 JAWAB$=INPUT$(1) : PRINT JAWAB$

90 IF JAWAB$="Y" OR JAWAB$="y" THEN GOTO 20

100 CLOSE #1

110 END

Contoh –4(Koreksi Data)

Page 13: PRAKTIKUM VI VB.docx

Mengubah data dari record tertentu dalam file data. Hal ini terjadi, misalnya jika terdapat kesalahan dalam pengisian nilai seorang siswa, dan data tersebut ingin diperbaiki.

10 CLS

20 OPEN "I", #1, "SISWA.DAT"

30 OPEN "O", #2,"BARU.DAT"

40 INPUT "NIM YANG AKAN DIKOREKSI NILAINYA : ", NIMCARI$

50 PRINT

60 SWITCH = 0

70 WHILE NOT EOF(1)

1. INPUT #1, NIM$, NAMA$, NILAI

1. IF NIM$<>NIMCARI$ THEN GOTO 170

1. PRINT " NOMOR INDUK MAHASISWA : "; NIM$

110 PRINT " NAMA MAHASISWA : "; NAMA$

120 PRINT " NILAI MAHASISWA : "; NILAI

1. PRINT

140 INPUT " NILAI YANG BARU : ", B$

1. SWITCH = 1

1. IF B$<> "" THEN NILAI = VAL(B$)

1. WRITE #2, NIM$, NAMA$, NILAI

180 WEND

190 CLOSE

310 KILL"SISWA.DAT"

320 NAME "BARU.DAT" AS "SISWA.DAT"

330 IF SWITCH=0 THEN PRINT "MAAF, NIM TERSEBUT TIDAK ADA DALAM FILE!"

340 PRINT

350 PRINT "ADA KOREKSI LAGI [Y/T] : ";

360 J$=INPUT$(1):PRINT J$

370 IF J$="y" OR J$="Y" THEN GOTO 10

380 END

Contoh –5 (Hapus Data)

Page 14: PRAKTIKUM VI VB.docx

Program untuk menghapuskan record tertentu dari file data berurutan ini mirip dengan program untuk mengubah data dari record tertentu yang telah dijelaskan pada pasal sebelumnya. Buat program untuk menghapus rcord mahasiswa tertentu dari file data SISWA.DAT yang telah digunakan pada pasal-pasal sebelumnya. Pada program ini NIM sebagai kunci pencarian.

10 CLS

20 OPEN "I", #1, "SISWA.DAT"

30 OPEN "O", #2,"BARU.DAT"

40 INPUT "NIM YANG AKAN DIKOREKSI NILAINYA : ", NIMCARI$

50 PRINT

60 SWITCH = 0

70 WHILE NOT EOF(1)

1. INPUT #1, NIM$, NAMA$, NILAI

1. IF NIM$<>NIMCARI$ THEN GOTO 171

1. PRINT " NOMOR INDUK MAHASISWA : "; NIM$

110 PRINT " NAMA MAHASISWA : "; NAMA$

120 PRINT " NILAI MAHASISWA : "; NILAI

1. PRINT

140 SWITCH = 1

1. PRINT "INGIN DIHAPUS DARI FILE [Y/T] : ";2. JAWAB$=INPUT$(1) : PRINT JAWAB$

1. IF JAWAB$<> "Y" OR JAWAB$<>"y" THEN GOTO 1712. GOTO 180

1. WRITE #2, NIM$, NAMA$, NILAI

180 WEND

190 CLOSE

310 KILL"SISWA.DAT"

320 NAME "BARU.DAT" AS "SISWA.DAT"

330 IF SWITCH<>1 THEN PRINT "MAAF, NIM TERSEBUT TIDAK ADA DALAM FILE!"

340 PRINT

350 PRINT "ADA RECORD YANG AKAN DIHAPUS LAGI [Y/T] : ";

360 J$=INPUT$(1):PRINT J$

370 IF J$="y" OR J$="Y" THEN GOTO 10

380 END

Page 15: PRAKTIKUM VI VB.docx

1. Latihan :

Buatlah program untuk membuat file data "PEGAWAI.DAT" yang meliputi (Isi, Tambah, Cetak, Koreksi dan Hapus Data ) dimana tiap recordnya terdiri dari 4 field , yaitu :

NIP (string) Nama Pegawai (String) Alamat (String) Gaji Pokok (String)

1. Tugas :

Latihan diatas anda perbaiki lagi dengan tampilan yang lebih baik yaitu menggunakan lokasi /locate pencetakan dan penginputan, pemberian warna baik Background, maupun Foreground. Dan disertai Validasi penginputan.

Validasi penginputan :

NIP tidak boleh kembar dan harus 4 digit Nama pegawai maximal 20 digit Alamat Pegawai maximal 25 digit Gaji Pokok maximal 6 digit

1. Sumber Kepustakaan

Edi Noersasongko, Ir.,M.Kom, Belajar Bahasa Basic Secara Mudah, Modul STMIK Dian Nuswantoro.

Jogiyanto, H.M, Teori dan Aplikasi Program Komputer Bahasa Basic, Andi Offset, Yogyakarta, 1992

F. Soesianto B.Sc.E, Ir., Eko Nugroho, Ir., P. Insap Santosa, Ir., Pemrograman Basic, Andi Offset, Yogyakarta, 1992

Ekabrata Yudhistyra, Algoritma dan Pemrograman Terstruktur Dengan Microsoft Basic, Elex Media Komputindo.

Leroy Finkel and Jerarld R. Brown, Data File Programming In Basic, John Willey & Sons, Inc, New York, 1989.

 

Praktikum VIII

1. Judul Materi / Pokok Bahasan : File Random 2. Tujuan Instruksional Khusus : Diharapkan siswa dapat membuat file, menuliskan data ke file,

menutup file, menampilkan data, menambah dan menghapus data serta membuat program aplikasi dengan menggunakan access data random.

3. Jumlah pertemuan : 3 kali pertemuan ( 6x50 menit )4. Pengetahuan Prasyarat : Mahasiswa harus memahami perintah-5. Teori Dasar

Pengertian Random File sangat berbeda dengan pengertian Sequential File dimana pada Random File disini tiap item data dapat dibaca langsung atau dituliskan secara langsung, tanpa memproses secara berurutan sepanjang file data dari permulaan. Karenanya dapat lebih cepat untuk mentransfer data dari atau ke data random.

Perbedaanya dalam setiap penggunaan file random diperlukan penentuan panjang setiap field dari setiap record sehinga dapat diketahui panjang tiap record.

Page 16: PRAKTIKUM VI VB.docx

Adapun beberapa kelebihan yang dimiliki oleh random file adalah:

Cara kerja pengelolaan file dengan cara random lebih cepat karena bekerja berdasar nomor record. Nomor record merupakan bilangan bulat yang bisa digunakan untuk memanggil seluruh isi record yang ada. Kemudahan didalam memberikan perintah untuk membuka file.

Suatu data dapat dibaca secara langsung tanpa harus melalui pembacaan data dari awal

OPEN

Sebelum dapat menulis atau membaca ke File Random kita harus membuka file tersebut dengan pernyataan open. Sama dengan file sequential .

Syntaks/ Cara penulisan:

OPEN "R", #[nomor buffer],"[nama file],panjang record

Contoh :

OPEN "R",#1,"NILAI.DAT",33

Atau

OPEN "[nama file] AS #[nomor buffer] len=[panjang record]

R= Random : Random file selalu dibuka dalam modus "R" ,baik file akan dibaca maupun ditulis. Dikarenakan metode random dapat dibaca maupun ditulis pada saat yang sama

Nomor Buffer : Adalah nomor buffer memory atau tempat penampungan sementara nilai suatu data pada memory komputer

Panjang Record : Adalah panjang record pada file random

Contoh :

OPEN "NILAI.DAT" AS #1 len =33

Pernyataan diatas membuka file data "NILAI.DAT" sebagai file data acak Memberi nomor #1 untuk meletakan petunjuk record Menentukan panjang setiap record pada file "NILAI.DAT " adalah 33

Langkah setelah file data acak dibuka adalah menentukan panjang setiap field dari record tersebut

 

Field

Page 17: PRAKTIKUM VI VB.docx

Field statement merupakan cara untuk menyiapkan nama field beserta panjang tiap-tiap field di dalam buffer memory dan untuk mnentukan panjang record

Syntaks /Cara Penulisan

Field #[nomor buffer], Panjang Field 1 AS Var. Field 1, …

Untuk megalokasikan sejumlah tempat bagi variabel field atau dengan kata lain membagi buffer dengan nama dan panjang tertentu.

Pernyataan ini dilaksanakan sebelum perintah GET untuk membaca PUT untuk menulis. Nomor buffer adalah nomer buffer yang dibuka pada penyataan OPEN Panjang Field 1 adalah bilangan bulat yang menunjukan lebar tempat dari variabel field 1. Var. Field 1 adalah variabel string baik untuk data numerik maupun data non numerik. Nama variabel harus unik, bahwa tiap variabel field yang digunakan harus memiliki nama

yang berbeda. Jumlah panjang dari keseluruhan field tidak boleh melebihi dari panjang record maksimum

yang sudah ditentukan pada pernyataan OPEN yang sudah ditentukan

Contoh:

FIELD #1, 6 AS F.NRP$, 25 AS F.NAMA$, 2 AS F.NILAI$

 

 

1 – 6 7 – 31 31 - 33

Field Ke 1 Field Ke 2 Field Ke 3

Panjang 6 Karakter Panjang 25 Karakter Panjang 2 Karakter

LSET dan RSET

Untuk menyimpan data data kedalam variabeal field digunakan perintah LSET atau RSET

LSET untuk menyimpan data rapat kekiri RSET untuk menyimpan data rapat kekanan

Syntaks /Cara Penulisan

LSET [ekspresi]

RSET [ekspresi]

Contoh :

LSET F.NRP$ = "00.996""

RSET F.NAMA$="DENNY"

Pada random file pembacaan data dan penulisan data ke dalam file harus melalui variabel field dimana merupakan string variabel. Sehingga diperlukan statement LSET atau RSET.

Page 18: PRAKTIKUM VI VB.docx

Untuk keperluan penulisan data numerik ke dalam data field dimana variabel field selalu string. Maka diperlukan fungsi untuk mengkonversikan dari data numerik ke data string.

MKI$ mengubah bilangan bulat menjadi string yang panjangnya 2 byte

MKS$ mengubah bilangan bulat menjadi string yang panjangnya 4 byte

MKD$ mengubah bilangan bulat menjadi string yang panjangnya 8 byte

Contoh :

LSET F.NRP$ = MKI$(NILAI)

Untuk penulisan data dari dalam buffer ke dalam file random digunakan perintah PUT

PUT

Statement PUT berfungsi menuliskan / memindahkan sebuah record dari buffer ke dalam file random

Syntaks/Cara Penulisan

PUT #[nomor buffer],[nomor record]

Nomor buffer adalah nomer buffer yang dibuka pada penyataan OPEN Nomor record adalah nomor urut tempat data akan disimpan pada file data random

Contoh :

PUT #1, 5

Contoh Program Input Data (File Random) :

10 ‘************* Menulis Data *****************

20 ‘***********************************************

30 OPEN "NILAI.DAT" AS #1 LEN=33

40 FIELD #1, 6 AS F.NRP$, 25 AS F.NAMA$, 2 AS F.NILAI$

50 CLS

60 JUMREC=LOF(1)/33

70 REC=JUMREC+1

80 INPUT "NOMOR INDUK :" ,NRP$

90 INPUT "N A M A :" ,NAMA$

100 INPUT "N I L A I :" ,NILAI

110 LSET F.NRP$ = NRP$

120 LSET F.NAMA$ = NAMA$

Page 19: PRAKTIKUM VI VB.docx

130 LSET F.NILAI$ = MKI$(NILAI)

140 PUT #1,REC

150 INPUT "ISI DATA LAGI :" YT$

160 IF YT$="Y" OR YT$="y" THEN GOTO 50

170 CLOSE #1

160 END

 

 

LOF

Pada contoh diatas pada baris 60 digunakan perintah LOF untuk menentukan panjang record (dalam byte) yang ada pada file NILAI.DAT.

LOF adalah fungsi untuk menentukan pajang suatu file random. Jika panjang file random tersebut dibagi dengan panjang record akan diketahui jumlah record yang ada.

Misal pada file NILAI.DAT mempunyai 10 record danpanjang setiap record adalah 33. Maka fungsi LOF(1) akan memberikan nilai 330 byte. Dengan hasil seperti itu maka fungsi LOF dapat digunakan untuk mengetahui jumlah record pada file NILAI.DAT dengan jalan membaginya dengan panjang record yang sudah ditentukan pada statement OPEN

Syntax/cara penulisan

LOF (NOMOR BUFFER)

Contoh

JUMREC=LOF(1)/33

Nilai dari variabel JUMREC adalah panjang dari file NILA.DAT. Jika kemudian dibagi dengan panjang record file NILAI.DAT dari contoh panjang record adalah 33. Maka akan diadapat total keseluruhan record yang ada pada file NILAI.DAT

CLOSE

Syntax/Cara penulisan

Close # [nomer buffer]

Untuk Penulisan Close tidak ada perbedaan dengan penulisan close pada file sequential.

 

Algoritma pembentukan file

Open File , sebutkan nama file dan nomer buffer yang digunakan (Open Statement)

Page 20: PRAKTIKUM VI VB.docx

Field, Alokasikan tempat didalam random buffer dengan menyebut nomor buffer dan panjang setiap field yang digunakan.

Jumrec, Mencari jumlah record dengan cara membagi panjang file (LOF) dengan panjang record.

REC=JUMREC+1 Input, memasukan data dari keyboard LSET atau RSET untuk meletakan data kedalam buffer memori sertakan juga fungsi konversi

jika diperlukan. PUT, Tulis atau rekam data ke dalam disk file.

Pembacaan File Random

Untuk pembacaan file random digunakan perintah GET. Fungsinya untuk memindahkan sebuah record dari file data ke buffer memory.

Syntaks/Cara penulisan

GET #[Nomor Buffer],[Nomor Record]

Nomor buffer adalah nomer buffer yang dibuka pada penyataan OPEN Nomor record adalah nomor urut tempat data akan disimpan pada file data random

Contoh

GET #1,5

Pada pembacaan data tentu perlu mengubah dari data string ke dalam data numerik seperti halnya waktu penulisan data ke dalam buffer. Kemudian untuk menkonversikan data dari data string ke dalam data numerik.

CVI mengubah data string menjadi bilangan bulat yang panjangnya 2 byte

CVS mengubah data string menjadi bilangan bulat yang panjangnya 4 byte

CVD mengubah data string menjadi bilangan bulat yang panjangnya 8 byte

Contoh 1:

10 ‘************* Membaca Data *****************

20 ‘***********************************************

30 OPEN "NILAI.DAT" AS #1 LEN=33

40 FIELD #1, 6 AS F.NRP$, 25 AS F.NAMA$, 2 AS F.NILAI$

50 JUMLAH=LOF(1)/33

60 FOR REC= 1 TO JUMLAH

70 GET #1,REC

80 NRP$ = F.NRP$

100 NAMA$ = F.NAMA$

Page 21: PRAKTIKUM VI VB.docx

110. NILAI = CVI(F.NILAI$)

120 PRINT USING "\ \ \ \ ####### ";NRP$,NAMA$,NILAI

130 NEXT

140 CLOSE #1

Contoh 2 :

10 ‘************* Membaca Data *****************

20 ‘************ Satu Per Satu *****************

30 OPEN "NILAI.DAT" AS #1 LEN=33

40 FIELD #1, 6 AS F.NRP$, 25 AS F.NAMA$, 2 AS F.NILAI$

50 JUMLAH=LOF(1)/33

60 INPUT "MASUKAN RECORD DATA : ",rec

70 GET #1,REC

80 NRP$ = F.NRP$

100 NAMA$ = F.NAMA$

111. NILAI = CVI(F.NILAI$)

120 PRINT USING "\ \ \ \ ####### ";NRP$,NAMA$,NILAI

130 INPUT "ISI DATA LAGI :" YT$

140 IF YT$="Y" OR YT$="y" THEN GOTO 60

150 CLOSE #1

160 END

Contoh 3 Program Koreksi (File Random) :

10 ‘************* KOREKSI DATA*****************

20 ‘************ *************************************

30 OPEN "NILAI.DAT" AS #1 LEN=33

40 FIELD #1, 6 AS F.NRP$, 25 AS F.NAMA$, 2 AS F.NILAI$

50 JUMLAH=LOF(1)/33

60 INPUT "Masukan nomor induk yang akan dikoreksi: ",M.CARI$

70 FOR REC=1 TO JUMLAH

80. GET #1,REC

90 M.NRP$=F.NRP$

Page 22: PRAKTIKUM VI VB.docx

100 M.NAMA$=F.NAMA$

110 M.NILAI=CVI(F.NILA$)

100 IF M.NRP$=M.CARI$ THEN GOTO 140

110 NEXT REC

120 PRINT "DATA TIDAK ADA"

130 GOTO 60

140 PRINT "NOMOR INDUK :" ,NOMOR$

150 PRINT "N A M A :" ,M.NAMA$

160 PRINT "N I L A I :" ,M.NILAI

170 INPUT "DATA INI INGIN DIKOREKSI ",Y$

180 IF Y$="Y" OR Y$="y" THEN GOTO 200

190 IF Y$="T" OR Y$="t" THEN GOTO 60

200 INPUT "N A M A :" ,M.NAMA$

210 INPUT "NILAI I :" ,M.NILAI

220 INPUT "DATA SUDAH BETUL ",Y$

230 IF Y$="Y" OR Y$="y" THEN GOTO 200

240 IF Y$="T" OR Y$="t" THEN GOTO 250

250 LSET F.NRP$ = M.NRP$

260 LSET F.NAMA$ = M.NAMA$

270 LSET F.NILAI$ = MKI$(M.NILAI)

280 PUT #1,REC

290 INPUT "KOREKSI DATA LAGI ",Y$

300 IF Y$="Y" OR Y$="y" THEN GOTO 60

310 IF Y$="T" OR Y$="t" THEN CLOSE #1

320 END

Algoritma Program Koreksi

1. Buka file data nilai.dat

Page 23: PRAKTIKUM VI VB.docx

2. Tentukan panjang field untuk file nilai.dat3. Masukan data nomor registasi yang akan dikoreksi dengan variabel MNRP$ 4. Baca data dari file NILAI.DAT .

Gunakan statement perulangan untuk pembacaan data tersebut. Validasikan nomor$=M.NRP$, Jika data variabel F.NRP$ sama dengan data variabel MNRP$, keluar dari proses perulangan ke no. 5.

Jika data tidak ketemu kembali ke no. 3

5. Tampilkan data mahasiswa6. Edit data yang akan di koreksi7. Jika data selesai di koreksi simpan data kembali ke dalam file Nilai.dat

Contoh Program Hapus Data

10 ‘************* HAPUS DATA *****************

20 ‘************ *************************************

25 SW=0

30 OPEN "NILAI.DAT" AS #1 LEN=33

40 FIELD #1, 6 AS F.NRP$, 25 AS F.NAMA$, 2 AS F.NILAI$

50 JUMLAH=LOF(1)/33

60 OPEN "BARU.DAT" AS #2 LEN=33

70 FIELD #2, 6 AS F.NRP2$, 25 AS F.NAMA2$, 2 AS F.NILA2I$

80 JUMLAH2=LOF(2)/33

90 INPUT "Masukan nomor induk yang akan dihapus: ",NRPCARI$

100

FOR REC=1 TO JUMLAH

110 GET #1,REC

120 M.NRP$=F.NRP$

130 M.NAMA$=F.NAMA$

140 M.NILAI=CVI(F.NILA$)

150 IF NOMOR$=NRPCARI$ THEN SW=1:GOTO 250

160. LSET F.NRP2$=M.NRP$

170 LSET F.NAMA2$=M.NAMA$

180. LSET F.NILAI2$=MKI$(M.NILAI)

190 RECBARU=RECBARU+1

200 PUT #2,RECBARU

Page 24: PRAKTIKUM VI VB.docx

210 NEXT REC

215 IF SW=0 THEN PRINT " DATA TIDAK DITEMUKAN "

220 GOTO 310

230 ‘******SUB RUTIN CETAK

240 PRINT "NOMOR INDUK :" ,NOMOR$

250 PRINT "N A M A :" ,M.NAMA$

260 PRINT "N I L A I :" ,M.NILAI

270 INPUT "DATA INI INGIN DIHAPUS ",Y$

280 IF Y$="Y" OR Y$="y" THEN GOTO 210

290 IF Y$="T" OR Y$="t" THEN GOTO 160

300’****************************************

310’***************PENGUBAHAN FILE

320 CLOSE #1,#2

330 KILL"NILAI.DAT"

330 NAME "BARU.DAT" AS "NILAI.DAT"

340 END

1. Latihan

Buatlah program untuk membuat file data "PEGAWAI.DAT" yang meliputi (Isi, Tambah, Cetak, Koreksi dan Hapus Data ) dimana tiap recordnya terdiri dari 4 field , yaitu :

KETERANGAN Type Panjang

NomerInduk Pegawai

String 6

Nama Pegawai String 20

Alamat Pegawai

String 25

Gaji Pokok Numerik 8

 

Page 25: PRAKTIKUM VI VB.docx

Latihan diatas anda perbaiki lagi dengan tampilan yang lebih baik yaitu menggunakan lokasi /locate pencetakan dan penginputan, pemberian warna baik Background, maupun Foreground. Dan disertai Validasi penginputan.

Validasi penginputan :

NIP tidak boleh kembar dan harus 4 digit Nama pegawai maximal 20 digit Alamat Pegawai maximal 25 digit

o Gaji Pokok maximal 8 digit

7. Tugas

Dengan tehnik random file buatlah program untuk INPUT, KOREKSI,HAPUS,LAPORAN dengan item sebagai berikut.

KETERANGAN JENIS BYTE FIELD VARIABEL

MEMORI VARIABEL

NOMOR INDUK PEGAWAI STRING 3 XNOMOR$ MNOMO$

NAMA PEGAWAI STRING 20 XNAMA$ MNAMA$

ALAMAT PEGAWAI STRING 20 XALAMAT$ MALAMAT$

KOTA STRING 20 XKOTA$ MKOTA$

TANGGAL MASUK STRING 10 XTGL$ MTGL$

STATUS STRING

1. KAWIN2. BELUM

KAWIN

1 XSTS$ MSTS$

PENDIDIKAN STRING

1. SD2. SMP3. SMA4. DIII5. S1

1 XDIDIK$ MDIDIK$

BAGIAN STRING

1-PENDIDIKAN

2-KEUANGAN

3-KESISWAAN

4-ADMINISTRASI

1 XBAGIAN$ MBAGIAN$

JABATAN STRING 1 XJABAT$ MJABAT$

Page 26: PRAKTIKUM VI VB.docx

1-DIREKTUR

2-WAKIL DIR.

3-K.BAGIAN

4- KARYAWAN

GAJI POKOK NUMERIK 8 XGAPOK$ MGAPOK

TUNJANGAN JABATAN NUMERIK 8 XTUNJAB$ MTUNJAB

LEMBUR NUMERIK 8 XLEMBUR$ MLEMBUR

 

 

 

 

 

Layout INPUT,KOREKSI,HAPUS.

PT. RANDOM Tanggal :

Jl. Tampomas Utara Record Ke :

INPUT DATA KARYAWAN

[1]. Nomor : ¢ ¢ ¢ [7].Pendidikan : ¢ [ keterangan ]

[2]. Nama Karyawan : ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ [8].Bagian : ¢ [ keterangan ]

[3]. Alamat : ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ [9]. Jabatan : ¢ [ keterangan ]

[4]. Kota : ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢ [10]. Gaji Pokok : ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢

[5]. Tgl.Lahir : ¢ ¢ -¢ ¢ -¢ ¢ ¢ ¢ [11]. Tunjangan : ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢

[6]. Status : ¢ [ keterangan ] [12]. Lembur/Jam : ¢ ¢ ¢ ¢ ¢ ¢ ¢ ¢

Input Data Lagi Y / T : [ ]

Keterangan :

Nomor karyawan

Harus diisi tidak boleh kosong

Page 27: PRAKTIKUM VI VB.docx

Untuk nomor karyawan harus di isi 3 digit Tidak boleh ada nomor yang sama atau kembar

Nama karyawan,Alamat,Kota

Tidak boleh kososng Maximal 20 digit

Tanggal lahir

Tidak boleh kosong Di isi dengan format dd-mm-yyyy

Status

Di isi dengan angaka 1 atau angka 2 selain itu di tolak Keterangan ditampilkan disebelahnya

Pendidikan

Di isi dengan angaka 1 sampai dengan angka 5 selain itu di tolak Keterangan ditampilkan disebelahnya

Bagian

Di isi dengan angaka 1 sampai dengan angka 4 selain itu di tolak Keterangan ditampilkan disebelahnya

Jabatan

Di isi dengan angaka 1 sampai dengan angka 4 selain itu di tolak Keterangan ditampilkan disebelahnya

Gaji pokok

Harus di isi maximal 8 digit

Tunjangan

Harus di isi maximal 8 digit

Lembur

Harus di isi maximal 8 digit

Untuk Koreksi

Nomor karyawan tidak boleh dikoreksi Koreksi no. 2 sampai dengan no.12

Untuk Layout Laporan

Semua field ditampilkan Laporan dibuat dengan konsep pindah halaman,tiap halaman terdiri dari 10 record Tiap halaman terdapat judul dan petunjuk halaman bertambah.

Page 28: PRAKTIKUM VI VB.docx

8. Sumber Kepustakaan

Edi Noersasongko, Ir.,M.Kom, Belajar Bahasa Basic Secara Mudah, Modul STMIK Dian Nuswantoro.

Jogiyanto, H.M, Teori dan Aplikasi Program Komputer Bahasa Basic, Andi Offset, Yogyakarta, 1992

F. Soesianto B.Sc.E, Ir., Eko Nugroho, Ir., P. Insap Santosa, Ir., Pemrograman Basic, Andi Offset, Yogyakarta, 1992

Ekabrata Yudhistyra, Algoritma dan Pemrograman Terstruktur Dengan Microsoft Basic, Elex Media Komputindo.

Leroy Finkel and Jerarld R. Brown, Data File Programming In Basic, John Willey & Sons, Inc, New York, 1989.