Banner

Rabu, 05 Januari 2011

Pascal Perpustakaan

Program Perpustakaan;
Uses crt,DOS;
var
   Judul   : array[1..20] of String;
   Lama    : array[1..20] of Integer;
   banyak  : array[1..20] of Byte;
   kata,grs,nama,nim,prodi,user,pass : String;
   x,y,i,j     :Byte;
   Jum_Harga,Total_Harga,disc,Total_Bayar,uang,Kembalian : Real;
   Ul : Char;

Procedure Data;
Begin
  Repeat
     clrscr;
     grs:='==================================================================';
     Textcolor(Yellow); Write('PERPUSTAKAAN CINTA BACA');
     Writeln;
     Textcolor(7);
     x:=round((78-length(kata))/2);
     gotoxy(x,2);writeln(kata);
     x:=round((78-length(grs))/2);
     {gotoxy(x,3);write(grs);
     -----------------------------}
     gotoxy(x,4);Textcolor(Yellow);write('DATA PEMINJAM');Textcolor(7);
     gotoxy(x,6);write('Nama  : ');readln(nama);
     gotoxy(x,7);write('NIM   : ');readln(nim);
     gotoxy(x,8);write('Prodi : ');readln(prodi);
     gotoxy(x,9);write(grs);
     gotoxy(x,10);writeln('| No | Judul Buku        | Lama Sewa     | Banyak | Jumlah Harga |');
     gotoxy(x,11);write(grs);
     {--------------------------------------------------------------------}
     i:=0;
     Total_Harga:=0;
     repeat

       i:=i+1;
       gotoxy(x,11+i);write('| ',i);
       gotoxy(x+5,11+i);write('|');
       gotoxy(x+7,11+i);readln(Judul[i]);
       if Judul[i] <>'' then
       begin
          gotoxy(x+25,11+i);write('|');
          gotoxy(x+28,11+i);readln(Lama[i]);
          gotoxy(x+28,11+i);writeln(Lama[i]);
          gotoxy(x+41,11+i);write('|');
          gotoxy(x+44,11+i);readln(Banyak[i]);
          gotoxy(x+50,11+i);write('|');
          Jum_Harga:=Lama[i]*500*Banyak[i];
          gotoxy(x+53,11+i);writeln(Jum_Harga:10:2);
          gotoxy(x+65,11+i);writeln('|');
          Total_Harga:=Total_Harga+Jum_Harga ;
       end;
       until Judul[i]='';
{--------------------------------------------------------------------}
       disc:=0;
       if (Total_Harga > 10000) and (Total_Harga <100000) then
          disc:=0.05 * Total_Harga
       else
       if (Total_Harga >= 100000 ) then
          disc:=0.1 *Total_Harga;
{--------------------------------------------------------------------}
          j:=i-1;
          gotoxy(x,12+j);write(grs);
          gotoxy(x,12+j+1);write('Total Sewa :');
          gotoxy(x+53,12+j+1);write(Total_Harga:10:2);
          gotoxy(x,12+j+2);write('Discount :');
          gotoxy(x+53,12+j+2);write(disc:10:2);
          gotoxy(x,12+j+3);write(grs);
          gotoxy(x,12+j+4);write('Total :');
          Total_Bayar:=Total_Harga-disc;
          gotoxy(x+53,12+j+4);write(Total_Bayar:10:2);
          gotoxy(x,12+j+5);write('Uang diBayar');
          gotoxy(x+53,12+j+5);readln(Uang);
          gotoxy(x+53,12+j+5);writeln(Uang:10:2);
          gotoxy(x,12+j+6);Write(grs);
          Kembalian:=Uang - Total_Bayar;
          gotoxy(x,12+j+7);writeln('Uang Kembali');
          gotoxy(x+53,12+j+7);write(Kembalian:10:2);
            gotoxy(x,12+j+10);Textbackground(12);Write('TRANSAKSI KEMBALI [Y/T]: ');Readln(Ul);
          Textbackground(1);
  Until Upcase(Ul) <> 'Y';
End;

Pascal Nilai Mahasiswa

Program Nilai_akhir_mahasiswa;
Uses Crt;
Var
   Nama,NIM,Jenjang,Prodi,Ket : String;
   NilPres,NilUts,NilUas,NilTug,NilAkhir : Real;
   Absen : Integer;
   Grade : Char ;
Begin
     Clrscr;
     Writeln('      DAFTAR NILAI MAHASISWA      ');
     Writeln('==================================');
     Writeln;
     Write('  NIM            : ');Readln(NIM);
     Write('  Nama Mahasiswa : ');Readln(Nama);
     Write('  Jenjang        : ');Readln(Jenjang);
     Write('  Program Study  : ');Readln(Prodi);
     Writeln;
     Write('  Kehadiran      : ');Readln(Absen);
     Write('  Nilai Tugas    : ');Readln(NilTug);
     Write('  Nilai UTS      : ');Readln(NilUts);
     Write('  Nilai UAS      : ');Readln(NilUas);
     NilPres:=Absen/14*100/100*10;
     NilTug:=NilTug*25/100;
     NilUts:=NilUts*25/100;
     NilUas:=NIlUas*40/100;
     NilAkhir:=NilPres+NilTug+NilUts+NilUas;