Rabu, 07 Mei 2008

TUGAS ALGORITMA2

CONTOH LISTING PROGRAM UNTUK WINDOWS DOS

DI BAWAH INI POTONGAN PROGRAM PENGOLAHAN DATA PEGAWAI:

1. ENTRY DATA {peninputan data}
Data awal untuk membuat sebuah program misalnya variable dsb

Data ini sangat dibutuhkan sekali karena merupakan modal dasar

Pembuatan program.





2. LIST DATA {menampilkan data yang sudah diinputkan}
Entry data yang sudah dimasukkan ditampilkan dengan list data

Contohnya writeln( ),readln( ) dsb.





3. UPDATE DATA {mengedit data yang sudah ditampilkan bilamana diperlukan

untuk melakukan perubahan informasi}






4. DELETE DATA{melakukan penghapusan data,apabila data yang telah

diinputkan perlu untuk di hapus}

Untuk lebih lengkapnya Hubungi saya van_gress88@yahoo.com

Setelah mengetahui bagaimana algoritmanya kita baru masuk ke penjelasan

listing program.

Listing dibawah merupakan pendeklarasian yang dibutuhkan oleh program

yang kita buat. Ada beberapa macam deklarasi diantaranya deklarasi tipe

data,konstanta,fungsi dll.

FilePeg, FileDum: Text;

TGL,Nip,NIPC: String[10];

Tempat untuk penyimpanan data yang telah Nmp: String[15];

pendeklarasian tempat untuk penyimpanan data semen

Diinputkan dan telah diedit. Kdj,Kdd: Char; tara yang telah diedit dan

berfunggsi sebagai

Msk: Real; tempat isolasi data yang akan di hpus dan telah

Pil, Jwb, Tunggu: Char; dihapus

Tmk, Gk, Pph, Gb: Real;

SWHAPUS, SWADA, SWHEAD,

CBD, HAL, BRS, UL: WORD;

NO: WORD;

CEK: INTEGER;

MSKS: STRING[6];

FUNCTION JAB(KodeJab:Char):String;

A. ENTRY DATA

Begin

Wrn(15,00);Clr;

KOT1(33,01,47,04,15);

Gotoxy(35,02);Write('PT. SINARAN');

Gotoxy(35,03);Write('Tasikmalaya');

GOTOXY(05,06);WRITE('Faktur Gaji Karyawan');

G2H(05,24,07,15,00);

GOTOXY(56,06);WRITE('Tanggal : 06-01-97');

G1H(56,76,07,15,00);

GOTOXY(05,09);WRITE('Nomor Induk : ');

GOTOXY(05,10);WRITE('Nama Pegawai : ');

GOTOXY(05,11);WRITE('Kode Jabatan : [ D/K/S ]');

GOTOXY(05,12);WRITE('J a b a t a n : ');

GOTOXY(05,13);WRITE('Kode Dinas : [ D/L ]');

GOTOXY(05,14);WRITE('B a g i a n : ');

GOTOXY(05,16);WRITE('Masa Kerja : tahun');

GOTOXY(05,18);WRITE('Gaji Pokok : Rp. ');

GOTOXY(05,19);WRITE('Tunj Ms Kerja : Rp. ');

GOTOXY(45,18);WRITE('Gaji Kotor : Rp. ');

GOTOXY(45,19);WRITE('P. P. H. : Rp. ');

GOTOXY(05,21);WRITE('Gaji Bersih : Rp. ');

Gotoxy(45,21);Write('Masih Ada Data (Y/T) ? ');

End;

POTONGAN LISTING UNTUK ENTRY DATA

Gotoxy digunakan untuk mencetak data,contoh :

GOTOXY(05,09);WRITE('Nomor Induk : ');

Jadi untuk inputan no induk akan di tampilkan di layar pada baris ke

lima kolom ke sembilan dan menampilakn informasi untuk meminta user

memasukan data dan menyimpannya ke dalam variabel yang telah di

deklarasikan.

B. LIST DATA

BEGIN

Wrn(15,00);Clr;

HAL:=HAL+1;

Gotoxy(01,01);WRITE('PT. SINARAN');

Gotoxy(63,01);WRITE('Halaman : ',HAL:3);

G2H(01,80,02,15,00);

Gotoxy(01,03);WRITE(H1);

Gotoxy(01,04);WRITE(H2);

G1H(01,80,05,15,00);

BRS:=05; SWHEAD:=1;

END;

READLN(FilePeg,NIP,NMP,KDJ,KDD,MSKS);

VAL(MSKS,MSK,CEK);

BRS:=BRS+1;

GOTOXY(01,BRS);WRITE(NO:3);

GOTOXY(05,BRS);WRITE(NIP);

GOTOXY(21,BRS);WRITE(Batas);

BRS:=BRS+1;

Proses(GP(Kdj),Kdj,Msk,Tmk,GK,PPH,GB);

GOTOXY(05,BRS);WRITE(NMP);

GOTOXY(21,BRS);WRITE(JAB(Kdj));

GOTOXY(29,BRS);WRITE(BAG(Kdd));

GOTOXY(38,BRS);WRITE(MSK:2:0);

GOTOXY(42,BRS);WRITE(GP(Kdj):6:0);

GOTOXY(50,BRS);WRITE(TMK:6:0);

GOTOXY(58,BRS);WRITE(GK:6:0);

GOTOXY(66,BRS);WRITE(PPH:6:0);

GOTOXY(74,BRS);WRITE(GB:6:0);

IF CBD>=5 THEN

BEGIN

G1H(01,80,BRS+1,15,00);

Gotoxy(01,Brs+2);WRITE('Tekan sembarang tombol untuk melanjutkan ...');

TUNGGU:=READKEY;

CBD:=0;SWHEAD:=0;

END;

END;

G1H(01,80,BRS+1,15,00);

Gotoxy(01,Brs+2);WRITE('Data sudah habis ... Tekan untuk kembali ke

Menu !');

TUNGGU:=READKEY;

End;

Close(FilePeg);

End

List data adalah out put dari entry data yang telah di masukan

Dari listing di atas maka list data nya adalah :





NIP :32456

NAMA PEGAWAI :AIMAN


C.UPDET DATA(edit data)

Procedure RubahData;

Begin

Repeat

SWADA:=0;

{$I-}

Reset(FilePeg);

{$I+}

If IOResult<>0 Then

Begin

File_Tidak_Ada;

JWB:=READKEY;

If Upcase(Jwb)='Y' Then

Begin

Rewrite(FilePeg);

Close(FilePeg);

End;

End Else

Begin

Form_Tampilan_Isian;

Gotoxy(22,09);READLN(NIPC);

NIPC:=NIPC+SPC(10-LENGTH(NIPC));

ASSIGN(FileDum,'TEMFILE.~MP');

Rewrite(FileDum);

While Not EOF(FilePeg) DO

Begin

JWB:='T';

READLN(FilePeg,NIP,NMP,KDJ,KDD,MSKS);

If NIP=NIPC THEN

Begin

SWADA:=1;

VAL(MSKS,MSK,CEK);

Gotoxy(22,10);WRITE(Nmp);

Gotoxy(22,11);WRITE(Kdj);

Gotoxy(22,12);WRITE(JAB(Kdj));

Gotoxy(22,14);WRITE(BAG(Kdd));

Proses(GP(Kdj),Kdj,Msk,Tmk,GK,PPH,GB);

Gotoxy(22,13);WRITE(Kdd);

Gotoxy(22,16);WRITE(Msk:3:0);

Gotoxy(28,18);WRITE(GP(Kdj):12:2);

Gotoxy(28,19);WRITE(TMK:12:2);

Gotoxy(64,18);WRITE(GK:12:2);

Gotoxy(64,19);WRITE(PPH:12:2);

Gotoxy(28,21);WRITE(GB:12:2);

Gotoxy(45,21);Write('Mau Dirubah (Y/T) ? ');

Gotoxy(68,21);Jwb:=Readkey;

Gotoxy(45,21);Write('Masih Ada Data (Y/T) ? ');

IF UPCASE(JWB)='Y' THEN

BEGIN

Form_Tampilan_Isian;

Nip:=NIPC;

Gotoxy(22,09);WRITE(Nip);

Gotoxy(22,10);READLN(Nmp);

Gotoxy(22,11);READLN(Kdj);

Gotoxy(22,12);WRITE(JAB(Kdj));

Gotoxy(22,13);READLN(Kdd);

Gotoxy(22,14);WRITE(BAG(Kdd));

Gotoxy(22,16);READLN(Msk);

Proses(GP(Kdj),Kdj,Msk,Tmk,GK,PPH,GB);

Gotoxy(28,18);WRITE(GP(Kdj):12:2);

Gotoxy(28,19);WRITE(TMK:12:2);

Gotoxy(64,18);WRITE(GK:12:2);

Gotoxy(64,19);WRITE(PPH:12:2);

Gotoxy(28,21);WRITE(GB:12:2);

END;

End;

Write (FileDum,NIP+SPC(10-LENGTH(NIP)),NMP+SPC(15-LENGTH(NMP)));

WriteLN(FileDum,KDJ,KDD,MSK:6:2);

End;

If SWADA=0 THEN Data_Tidak_Ketemu;

Gotoxy(68,21);Jwb:=Readkey;

Close(FileDum);

Close(FilePeg);

Erase(FilePeg);

Rename(FileDum,'DATAPEG.DBF');

End;

Until Upcase(Jwb)<>'Y';

End;

List diatas digunakan untuk perintah mengedit data yang telah di

inputkan namun untuk pengeditan data tersebut kita menggunakan file

dump(penyimpanan data sementara)untuk pengisolasian data yang telah di

pilih.apabila sudah selesai pengeditan maka data yang ada dalam file

dump di simpan ke file peg(memori utama).

D.DELETE DATA

Begin

Form_Tampilan_Isian;

Gotoxy(22,09);READLN(NIPC);

NIPC:=NIPC+SPC(10-LENGTH(NIPC));

ASSIGN(FileDum,'TEMFILE.~MP');

Rewrite(FileDum);

While Not EOF(FilePeg) DO

Begin

JWB:='T';

READLN(FilePeg,NIP,NMP,KDJ,KDD,MSKS);

If NIP=NIPC THEN

Begin

SWADA:=1;

VAL(MSKS,MSK,CEK);

Gotoxy(22,10);WRITE(Nmp);

Gotoxy(22,11);WRITE(Kdj);

Gotoxy(22,12);WRITE(JAB(Kdj));

Gotoxy(22,14);WRITE(BAG(Kdd));

Proses(GP(Kdj),Kdj,Msk,Tmk,GK,PPH,GB);

Gotoxy(22,13);WRITE(Kdd);

Gotoxy(22,16);WRITE(Msk:3:0);

Gotoxy(28,18);WRITE(GP(Kdj):12:2);

Gotoxy(28,19);WRITE(TMK:12:2);

Gotoxy(64,18);WRITE(GK:12:2);

Gotoxy(64,19);WRITE(PPH:12:2);

Gotoxy(28,21);WRITE(GB:12:2);

Gotoxy(45,21);Write('Mau Dihapus (Y/T) ? ');

Gotoxy(68,21);Jwb:=Readkey;

Gotoxy(45,21);Write('Masih Ada Data (Y/T) ? ');

End;

IF Upcase(JWB)<>'Y' THEN

Begin

Write (FileDum,NIP+SPC(10-LENGTH(NIP)),NMP+SPC(15-LENGTH(NMP)));

WriteLN(FileDum,KDJ,KDD,MSK:6:2);

End;

End;

If SWADA=0 THEN Data_Tidak_Ketemu;

Gotoxy(68,21);Jwb:=Readkey;

Close(FileDum);

Close(FilePeg);

Erase(FilePeg);

Rename(FileDum,'DATAPEG.DBF');

End;

Until Upcase(Jwb)<>'Y';

End;

List diatas digunakan untuk perintah menghapus data yang telah di

inputkan namun untuk penghapusan data tersebut kita menggunakan file

dump(penyimpanan data sementara)untuk pengisolasian data yang telah di

pilih.apabila sudah selesai penghapusan maka data yang ada dalam file

dump di simpan ke file peg(memori utama).

Tidak ada komentar: