Salam belajar teman-teman,, program sederhana dengan pascal ini sengaja saya berikan, karena saya ingin belajar berbagi ilmu sama teman-teman, karena ini merupakan tugas dari dosen ku, yang senantiasa, membantu saya agar berpikir secara logika tentang listing program ini, nahhh di sini lah ,kita semua memulai dari dasar nya,, dan juga tidak mungkin,, kita langsung beranjak ke pemrograman yang berbasis luas,, seperti Visual basic, Delphi, PHP dan lain sebagainya,, jadi yang saya harapkan dari teman-teman,,, agar janganlah cepat bosan yang namany belajar, karena kalau di tinggalkan , maka akan untuk ke depannya sulit kita ketahui,,, dan bagi teman-teman yang mempunyai tugas kurang lebih,, mirip seperti tugas ku,, jadi,,, ambil saja souce code nya di bawaha ini ........... semoga bermanfaat ya,,,,,,,, ^_^
USES CRT;
VAR NMA : STRING;
GOL : CHAR;
JM_KRJ: BYTE;
A,B : BYTE;
UPH_H, UPH_L, UPH_T, TOT_UPH : LONGINT;
BEGIN
CLRSCR;
WRITE('MASUKKAN JUMLAH INPUTAN
: ');READLN(B);
WRITELN('====================================');
FOR A:=1 TO B DO
BEGIN
WRITE('MASUKKAN NAMA KARYAWAN
: ');READLN(NMA);
WRITE('MASUKKAN GOLONGAN
: ');READLN(GOL);
WRITE('MASUKKAN JUMLAH JAM KERJA
: ');READLN(JM_KRJ);
WRITELN('====================================');
IF
GOL = '1' THEN
BEGIN
UPH_H := 50000;
UPH_L := 10000;
END
ELSE IF GOL = '2' THEN
BEGIN
UPH_H := 80000;
UPH_L := 20000;
END;
IF JM_KRJ >
8 THEN
UPH_T := (JM_KRJ - 8) * UPH_L
ELSE
UPH_T := 0;
TOT_UPH := UPH_H + UPH_T;
WRITELN('UPAH HARIAN SEBESAR RP. ',UPH_H);
WRITELN('UPAH LEMBUR SEBESAR RP. ',UPH_T);
WRITELN('TOTAL UPAH HARIAN RP.
',TOT_UPH);
WRITELN('====================================');
READLN;
END;
END.
MENGGUNAKAN RECORD
USES CRT;
TYPE DTA_KRYAWAN = RECORD
NMA : STRING;
GOL : CHAR;
JM_KRJ: BYTE;
A,B : BYTE;
UPH_H, UPH_L, UPH_T, TOT_UPH : LONGINT;
END;
VAR DATA : DTA_KRYAWAN;
BEGIN
CLRSCR;
WRITE('MASUKKAN JUMLAH INPUTAN : ');READLN(DATA.B);
WRITELN('====================================');
FOR DATA.A:=1 TO DATA.B DO
BEGIN
WRITE('MASUKKAN NAMA KARYAWAN : ');READLN(DATA.NMA);
WRITE('MASUKKAN GOLONGAN : ');READLN(DATA.GOL);
WRITE('MASUKKAN JUMLAH JAM KERJA : ');READLN(DATA.JM_KRJ);
WRITELN('====================================');
IF DATA.GOL = '1' THEN
BEGIN
DATA.UPH_H := 50000;
DATA.UPH_L := 10000;
END
ELSE IF DATA.GOL = '2' THEN
BEGIN
DATA.UPH_H := 80000;
DATA.UPH_L := 20000;
END;
IF DATA.JM_KRJ > 8 THEN
DATA.UPH_T := (DATA.JM_KRJ - 8) *
DATA.UPH_L
ELSE
DATA.UPH_T := 0;
DATA.TOT_UPH := DATA.UPH_H + DATA.UPH_T;
WRITELN('UPAH HARIAN SEBESAR RP.
',DATA.UPH_H);
WRITELN('UPAH LEMBUR SEBESAR RP.
',DATA.UPH_T);
WRITELN('TOTAL UPAH HARIAN RP. ',DATA.TOT_UPH);
WRITELN('====================================');
READLN;
END;
END.
USES CRT;
VAR NO_PKOK : STRING[10];
NMA : STRING[30];
NT,NM,NF,JDTA :
BYTE;
NA,NMAX,NMIN :
INTEGER;
TOT_TGS,TOT_MID,TOT_FNL,A,B : BYTE;
RTA_TGS,RTA_MID,RTA_FNL : REAL;
BEGIN
NMAX := 0; NMIN :=
100; JDTA := 0;
CLRSCR;
WRITELN('================[ MENGHITUNG NILAI AKHIR ]================');
WRITE('MASUKKAN
NO. POKOK :
');READLN(NO_PKOK);
WHILE NO_PKOK <> 'X' DO
BEGIN
INC(JDTA);
WRITE('MASUKKAN N A M A
: ');READLN(NMA);
WRITE('MASUKKAN NILAI TUGAS
: ');READLN(NT);
TOT_TGS :=
TOT_TGS + NT;
WRITE('MASUKKAN NILAI MID
: ');READLN(NM);
TOT_MID :=
TOT_MID + NM;
WRITE('MASUKKAN NILAI FINAL
: ');READLN(NF);
TOT_FNL := TOT_FNL + NF;
NA :=
TOT_TGS + TOT_MID + TOT_FNL;
{MENCARI NILAI AKHIR MAXIMUM}
IF NA > NMAX THEN
NMAX :=
NA;
{MENCARI
NILAI AKHIR MINIMUM}
IF NA < NMIN THEN
NMIN :=
NA;
WRITELN('NILAI AKHIR MAHASISWA
: ',NA);
WRITELN('==========================================================');
WRITE('MASUKKAN NO. POKOK [X : KELUAR]
: ');READLN(NO_PKOK);
{MENCARI NILAI RATA-RATA}
RTA_TGS :=
TOT_TGS / JDTA;
RTA_MID :=
TOT_MID / JDTA;
RTA_FNL :=
TOT_FNL / JDTA;
WRITELN('==========================================================');
WRITELN('NILAI AKHIR TERTINGGI : ',NMAX);
WRITELN('NILAI AKHIR TERENDAH
: ',NMIN);
WRITELN('==========================================================');
WRITELN('RATA-RATA NILAI TUGAS
: ',RTA_TGS:10:2);
WRITELN('RATA-RATA NILAI MID
: ',RTA_MID:10:2);
WRITELN('RATA-RATA NILAI FINAL
: ',RTA_FNL:10:2);
READLN;
END;
WRITELN('================[ MENGHITUNG NILAI AKHIR ]================');
END.
0 Komentar:
Post a Comment