Create your own banner at mybannermaker.com!
Pascal Menu File
Picture
Pascal Program Pilihan File

Pascal Program Menu Pilihan File

Program Menu_Text_File;
Uses Crt;
var
   BerkasTeks, BerkasDummy   : Text;
   fileteks,filedummy        : Text;
   Nimmhs                    : String[10];
   Namamhs                   : String[20];
   alamatmhs                 : String[20];
   Lahirmhs                  : String[20];
   kodekul     : String[10];
   namakul     : string[20];
   skskul             : string[20];
   semesterkul     : string[20];
   Lagi, Jawab               : Char;
   Ketemu                    : Boolean;
   pil:real;
   U1:char;

Procedure Masukan_Data;
Begin
  Assign(BerkasTeks,'mahasiswa.txt');
  Rewrite(BerkasTeks);
  Lagi:='Y';
  While UpCase(Lagi)='Y' Do
    Begin
      ClrScr;
      Gotoxy(5,4);writeln('Masukan Data Mahasiswa');
      Gotoxy(5,6);write('Nomor Induk Mahasiswa  : ');
      Gotoxy(5,8);write('Nama Mahasiswa         : ');
      Gotoxy(5,10);write('Alamat Mahasiwa        : ');
      Gotoxy(5,12);write('Tanggal Lahir          : ');
      Gotoxy(30,6);readln(nimmhs);
      Gotoxy(30,8);readln(Namamhs);
      Gotoxy(30,10);readln(alamatmhs);
      Gotoxy(30,12);readln(lahirmhs);
      writeln(BerkasTeks,nimmhs:5,Namamhs:20,alamatmhs:20,lahirmhs:10);
      gotoxy(5,15);write('Ada data lagi [Y/T] : ');
      readln(Lagi);
    End;
Close(BerkasTeks);
end;

Procedure Masukan_Data2;
Begin
  Assign(fileTeks,'kuliah.txt');
  Rewrite(fileTeks);
  Lagi:='Y';
  While UpCase(Lagi)='Y' Do
    Begin
      ClrScr;
      Gotoxy(5,4);writeln('Masukan Data Kuliah');
      Gotoxy(5,6);write('Kode Mata Kuliah   : ');
      Gotoxy(5,8);write('Nama Mata Kuliah   : ');
      Gotoxy(5,10);write('SKS                : ');
      Gotoxy(5,12);write('Semester           : ');
      Gotoxy(26,6);readln(kodekul);
      Gotoxy(26,8);readln(Namakul);
      Gotoxy(26,10);readln(skskul);
      Gotoxy(26,12);readln(semesterkul);
      writeln(fileTeks,kodekul:5,Namakul:20,skskul:10,Semesterkul:10);
      gotoxy(5,15);write('Ada data lagi [Y/T] : ');
      readln(Lagi);
    End;
Close(fileTeks);
end;

Procedure Tambah_Data;
Begin
  Assign(BerkasTeks,'mahasiswa.txt');
  Append(BerkasTeks);
  Lagi:='Y';
  While UpCase(Lagi)='Y' Do
    Begin
      ClrScr;
      Gotoxy(5,4);writeln('Masukan Data Mahasiswa');
      Gotoxy(5,6);write('Nomor Induk Mahasiswa  : ');
      Gotoxy(5,8);write('Nama Mahasiswa         : ');
      Gotoxy(5,10);write('Alamat Mahasiwa        : ');
      Gotoxy(5,12);write('Tanggal Lahir          : ');
      Gotoxy(30,6);readln(nimmhs);
      Gotoxy(30,8);readln(Namamhs);
      Gotoxy(30,10);readln(alamatmhs);
      Gotoxy(30,12);readln(lahirmhs);
      writeln(BerkasTeks,nimmhs:5,Namamhs:20,alamatmhs:20,lahirmhs:10);
      gotoxy(5,15);write('Ada data lagi [Y/T] : ');
      readln(Lagi);
    End;
    Close(BerkasTeks);
end;

Procedure Tambah_Data2;
Begin
  Assign(fileTeks,'kuliah.txt');
  Append(fileTeks);
  Lagi:='Y';
  While UpCase(Lagi)='Y' Do
    Begin
      ClrScr;
      Gotoxy(5,4);writeln('Masukan Data Kuliah');
      Gotoxy(5,6);write('Kode Mata Kuliah   : ');
      Gotoxy(5,8);write('Nama Mata Kuliah   : ');
      Gotoxy(5,10);write('SKS                : ');
      Gotoxy(5,12);write('Semester           : ');
      Gotoxy(26,6);readln(kodekul);
      Gotoxy(26,8);readln(Namakul);
      Gotoxy(26,10);readln(skskul);
      Gotoxy(26,12);readln(semesterkul);
      writeln(fileTeks,kodekul:5,Namakul:20,skskul:10,Semesterkul:10);
      gotoxy(5,15);write('Ada data lagi [Y/T] : ');
      readln(Lagi);
    End;
    Close(fileTeks);
end;

Procedure Koreksi_Data;
var
   KodeCari, spasi        : string[5];
Begin
  Lagi:='Y';
  While UpCase(Lagi)='Y' Do
    Begin
      Assign(BerkasTeks,'mahasiswa.txt');
      {$I-}
      reset(BerkasTeks);
      {$I+} ;
      Assign(BerkasDummy,'mahasiswa.$$$');
      Rewrite(BerkasDummy);
      spasi:='     ';
      ClrScr;
      Gotoxy(5,6);write('Kode Nomor Induk Mahasiswa yang dikoreksi : ');Readln(KodeCari);
      writeln;
      KodeCari:=Copy(spasi,1,5 -Length(KodeCari))+KodeCari;
      ketemu:=false;
      While Not Eof(BerkasTeks ) Do
      Begin
      readln(BerkasTeks,nimmhs,Namamhs,alamatmhs,lahirmhs);
       If nimmhs = KodeCari Then
        Begin
          ketemu:=True;
          gotoxy(15,7);writeln('Nomor Induk Mahasiswa :',nimmhs);
          gotoxy(15,8); write('Koreksinya :');readln(nimmhs);
          gotoxy(15,10);writeln('Nama Mahasiswa       :',Namamhs);
          gotoxy(15,11);write('Koreksinya : ');Readln(Namamhs);
          gotoxy(15,13);writeln('Alamat Mahasiswa     :',alamatmhs);
          gotoxy(15,14);write('Koreksinya : ');Readln(alamatmhs);
          gotoxy(15,16);writeln('Tangal Lahir         : ',lahirmhs);
          gotoxy(15,17);write('Koreksinya : ');Readln(lahirmhs);
        end;
        writeln(BerkasDummy,nimmhs:5,Namamhs:20,alamatmhs:20,lahirmhs:20);
      end;
      If Not Ketemu Then
         writeln('Tidak Nomor Induk Mahasiswa ini !!!');
      close(BerkasTeks);
      close(BerkasDummy);
      Erase(BerkasTeks);
      Rename(BerkasDummy,'mahasiswa.txt');
      writeln;
      write('Ada data lagi [Y/T] : ');
      readln(Lagi);
    End;
end;

Procedure Koreksi_Data2;
var
   KodeCari2, spasi2        : string[5];
Begin
  Lagi:='Y';
  While UpCase(Lagi)='Y' Do
    Begin
      Assign(fileTeks,'kuliah.txt');
      {$I-}
      reset(fileTeks);
      {$I+} ;
      Assign(fileDummy,'kuliah.$$$');
      Rewrite(fileDummy);
      spasi2:='     ';
      ClrScr;
      Gotoxy(5,6);write('Kode Kuliah yang dikoreksi : ');Readln(KodeCari2);
      writeln;
      KodeCari2:=Copy(spasi2,1,5 -Length(KodeCari2))+KodeCari2;
      ketemu:=false;
      While Not Eof(fileTeks ) Do
      Begin
      readln(fileTeks,kodekul,Namakul,skskul,Semesterkul);
       If kodekul = KodeCari2 Then
        Begin
          ketemu:=True;
          gotoxy(15,7);writeln('Kode Mata kuliah :',kodekul);
          gotoxy(15,8);write('Koreksinya :');readln(kodekul);
          gotoxy(15,10);writeln('Nama Matakuliah :',Namakul);
          gotoxy(15,11);write('Koreksinya: ');Readln(Namakul);
          gotoxy(15,13);writeln('Jumlah SKS       :',skskul);
          gotoxy(15,14);write('Koreksinya: ');Readln(skskul);
          gotoxy(15,16);writeln('Semester         : ',semesterkul);
          gotoxy(15,17);write('Koreksinya: ');Readln(semesterkul);
        end;
        writeln(fileDummy,kodekul:5,Namakul:20,skskul:20,Semesterkul:20);
      end;
      If Not Ketemu Then
         writeln('Tidak ada Kode Mata Kuliah ini !!!');
      close(fileTeks);
      close(fileDummy);
      Erase(fileTeks);
      Rename(fileDummy,'kuliah.txt');
      writeln;
      write('Ada data lagi [Y/T] : ');
      readln(Lagi);
    End;
end;


Procedure Tampil_Data;
Begin
  Assign(BerkasTeks,'mahasiswa.txt');
  {$I+}
  Reset(BerkasTeks);
  {$I-};
  ClrScr;
  Writeln('                  DAFTAR MAHASISWA STMIK MERCUSUAR  ');
  writeln('======================================================================');
  writeln('       NIM      NAMA MAHASISWA              ALAMAT           TGL.LAHIR');
  writeln('----------------------------------------------------------------------');
  while Not Eof(BerkasTeks) Do
  begin
  readln(BerkasTeks,nimmhs,Namamhs,alamatmhs,lahirmhs);
     writeln(nimmhs:5,Namamhs:20,alamatmhs:20,lahirmhs:20);
  End;
  writeln('======================================================================');
  Close(BerkasTeks);
  Readln;
end;


Procedure Tampil_Data2;
Begin
  Assign(fileTeks,'kuliah.txt');
  {$I+}
  Reset(fileTeks);
  {$I-};
  ClrScr;
  Writeln('        DAFTAR NAMA MATA KULIAH STMIK MERCUSUAR               ');
  writeln('=======================================================================');
  writeln(' KODE MK               NAMA MK                   JUMLAH SKS    SEMESTER   ');
  writeln('------------------------------------------------------------------------');
  while Not Eof(fileTeks) Do
  begin
   readln(fileTeks,kodekul,Namakul,skskul,Semesterkul);
   writeln(kodekul:5,Namakul:25,skskul:30,Semesterkul:0);
  End;
  writeln('========================================================================');
  Close(fileTeks);
  Readln;
end;

Procedure Layar_Menu_Utama;
var pilihan  : char;
    selesai  : boolean;
begin
  repeat
    clrscr;
    Gotoxy(15,6);writeln('   MENU DATA MAHASISWA ');
    Gotoxy(15,8);writeln ('1. Masukan Data Mahasiswa');
    Gotoxy(15,10);writeln('2. Menambah Data Mahasiswa');
    Gotoxy(15,12);writeln('3. Koreksi Data Mahasiswa');
    Gotoxy(15,14);writeln('4. Menampilkan Data Mahasiswa');
    Gotoxy(15,16);writeln('5. Selesai');
    Gotoxy(15,20);write('pilihan [1..5 ] :');readln(pilihan);
    clrscr;
    selesai:=false;
    clrscr;
    case pilihan of
      '1' : Masukan_Data;
      '2' : Tambah_Data;
      '3' : Koreksi_Data;
      '4' : Tampil_Data;
      '5' : selesai:=true;
    end;
  until selesai;

end;

Procedure Layar_Menu_Utama2;
var pilihan  : char;
    selesai  : boolean;
begin
  repeat
    clrscr;
    Gotoxy(15,6);writeln('   MENU KULIAH STMIK MERCUSUAR ');
    Gotoxy(15,8);writeln ('1. Masukan Data Kuliah');
    Gotoxy(15,10);writeln('2. Menambah Data Kuliah');
    Gotoxy(15,12);writeln('3. Koreksi Data kuliah');
    Gotoxy(15,14);writeln('4. Menampilkan Data kuliah');
    Gotoxy(15,16);writeln('5. Selesai');
    Gotoxy(15,20);write('pilihan [1..5 ] :');readln(pilihan);
    clrscr;
    selesai:=false;
    clrscr;
    case pilihan of
      '1' : Masukan_Data2;
      '2' : Tambah_Data2;
      '3' : Koreksi_Data2;
      '4' :Tampil_data2;
      '5' : selesai:=true;
    end;
  until selesai;
end;
begin
repeat
clrscr;
 gotoxy(15,5);writeln('1. File Mahasiswa     2.File Kuliah ');
 gotoxy(15,8);write('Masukan File Pilihan : ');readln(pil);
 if pil =1 then
 Layar_Menu_utama;
 begin
 if pil=2 then
 Layar_Menu_utama2;
 end;
 gotoxy(15,8);write('Mau Ulang Lagi ?[Y/T]:');readln(U1);
until upcase(U1)<>'Y';
end.

iNeedSell.com: Free online ads. Post your Ad here.
Pascal Data Perpustakaan
Picture
Pascal program data perpustakaan
Create your own banner at mybannermaker.com!

Pascal Program Data Perpustakaan

Program Data_Perpustakaan;
Uses Crt ;
Type Perpustakaan = Record
         NoMhs   : word;
         Nama    : String[20];
Jurusan : String[20];
Judul : String[20];
Telat : Real;
Denda : Real;
End;

Var Fileperpustakaan  : File of Perpustakaan;
     Data       : Perpustakaan;
     Pil,Ul     : Char;

Procedure Menu;
Begin
  Clrscr;
  Gotoxy(34,1);Write('MENU PILIHAN');
  Gotoxy(34,2);Write('============');
  Gotoxy(27,4);Write('1. Tambah Data Peminjam Buku');
  Gotoxy(27,5);Write('2. Edit Data Peminjam Buku');
  Gotoxy(27,6);Write('3. Hapus Data Peminjam Buku');
  Gotoxy(27,7);Write('4. Tampilkan Data Peminjam');
  Gotoxy(27,8);Write('5. View Mahasiswa Berdasarkan denda');
  Gotoxy(27,9);Write('6. Hapus NoMhs Ganjil');
  Gotoxy(27,10);Write('7. Keluar (Exit)');
  Gotoxy(32,12);Write('Pilihan [1..7]: ');Pil:=Readkey;
End;

Procedure BukaFile;
Begin
  Assign(Fileperpustakaan,'perpustakaan.Dat');
  {$I-};
  Reset(Fileperpustakaan);
  {$I+};
End;

Procedure Tambah;
Var Lagi: Char;
     Ada : Boolean;
     i    : Integer;
     NOCR: Word;
Begin
  Ul:='Y';
Lagi:='Y';
  Clrscr;

  BukaFile;
  If IOResult<>0 Then
      Rewrite(Fileperpustakaan);

  Repeat
     Clrscr;
     Ada:=False;
     i:=0;
     Gotoxy(30,1);Write('TAMBAH DATA PEMINJAM BUKU ');
     Gotoxy(30,2);Write('==========================');
     Gotoxy(20,4);Write('NIM                     : ');Readln(NOCR);
     While (Ada=False) And (i<>Filesize(Fileperpustakaan)) Do
       Begin
          Seek(Fileperpustakaan,i);
          Read(Fileperpustakaan,Data);
          If Data.NoMhs=NOCR Then
             Ada:=True
          Else
             Inc(i);
       End;
     If (Ada=True) Then
       Begin

Gotoxy(20,9);Write('Nomor Mahasiswa ",NOCR,"   Ini Sudah ada!');
       End
     Else
       Begin
          Seek(Fileperpustakaan,Filesize(Fileperpustakaan));
          Data.NoMhs:=NOCR;
          Gotoxy(20,5);Write('NAMA PEMINJAM           : ');Readln(Data.Nama);
          Gotoxy(20,6);Write('PROGRAM STUDY           : ');Readln(Data.jurusan);
          Gotoxy(20,7);Write('JUDUL BUKU              : ');Readln(Data.judul);
 Gotoxy(20,8);write('TELAT PENGEMBALIAN BUKU : ');Readln(data.telat);
 data.denda :=data.telat*500;
          Write(Fileperpustakaan,Data);
       End;
     Gotoxy(20,10);Write('Apakah Mau Tambah Data Lagi [Y/T]:');Lagi:=Upcase(Readkey);
  Until Lagi<>'Y';
  Close(Fileperpustakaan);
End;

Procedure Edit;
Var Lagi: Char;
     Ada : Boolean;
     i    : Integer;
     NOCR: Word;
Begin
  Ul:='Y';
  Lagi:='Y';
  Clrscr;

  BukaFile;
  If IOResult<>0 Then
      Write('Data Masih Kosong...!')
  Else
     Begin
       Repeat
Clrscr;
          Ada:=False;
          i:=0;
           Gotoxy(30,1);Write('EDIT DATA PEMINJAM BUKU ');
           Gotoxy(30,2);Write('=======================');
           Gotoxy(20,4);Write('NIM                     : ');Readln(NOCR);
          While (Ada=False) And (i<>Filesize(Fileperpustakaan)) Do
            Begin
               Seek(Fileperpustakaan,i);
               Read(Fileperpustakaan,Data);
               If Data.NoMhs=NOCR Then
                  Begin
                     Ada:=True;

 Gotoxy(20,5);Write('NAMA PEMINJAM           : ');Readln(Data.Nama);
          Gotoxy(20,6);Write('PROGRAM STUDI           : ');Readln(Data.jurusan);
          Gotoxy(20,7);Write('JUDUL BUKU              : ');Readln(Data.judul);
 Gotoxy(20,8);write('TELAT PENGEMBALIAN BUKU : ');Readln(data.telat);
 data.denda :=data.telat*500;
End
               Else
                  Inc(i);
            End;
          If (Ada=True) Then
            Begin
               Data.NoMhs:=NOCR;

  Gotoxy(20,5);Write('NAMA PEMINJAM           : ');Readln(Data.Nama);
         Gotoxy(20,6);Write('PROGRAM STUDI           : ');Readln(Data.jurusan);
         Gotoxy(20,7);Write('JUDUL BUKU              : ');Readln(Data.judul);
Gotoxy(20,8);write('TELAT PENGEMBALIAN BUKU : ');Readln(data.telat);
  data.denda :=data.telat*500;
               Seek(Fileperpustakaan,i);
               Write(Fileperpustakaan,Data);
            End
          Else
            Begin
               Gotoxy(20,13);Write('Nomor Mahasiswa "',NOCR,'" Ini Tidak Ada!');
            End;
          Gotoxy(20,14);Write('Apakah Mau Edit Data Lagi [Y/T]:  ');Lagi:=Upcase(Readkey);
       Until Lagi<>'Y';
     End;
  Close(Fileperpustakaan);
End;

Procedure Hapus;
Var FileTmp      : File of Perpustakaan;
     Lagi,Hapus: Char;
     Ada         : Boolean;
     i           : Integer;
     NOCR        : Word;
Begin
  Ul:='Y';
  Lagi:='Y';
  Clrscr;
  Repeat
     BukaFile;
     If IOResult<>0 Then
         Write('Data Masih Kosong...!')
     Else
       Begin
          Clrscr;
          Assign(FileTmp,'perpustakaan.tmp');
          Rewrite(FileTmp);
 Ada:=False;
          i:=0;

          Gotoxy(30,1);Write('HAPUS DATA PEMINJAM');
          Gotoxy(30,2);Write('=====================');
          Gotoxy(20,4);Write('NIM                     : ');Readln(NOCR);
          While (Ada=False) And (i<>Filesize(Fileperpustakaan)) Do
            Begin
               Seek(Fileperpustakaan,i);
               Read(Fileperpustakaan,Data);
               If Data.NoMhs=NOCR Then
                  Ada:=True
               Else
                  Inc(i);
            End;
          If (Ada=True) Then
            Begin
Gotoxy(20,5);Write('NAMA PEMINJAM          : ');Readln(Data.Nama);
         Gotoxy(20,6);Write('PROGRAM STUDI           : ');Readln(Data.jurusan);
         Gotoxy(20,7);Write('JUDUL BUKU              : ');Readln(Data.judul);
                Gotoxy(20,8);write('TELAT PENGEMBALIAN BUKU : ');Readln(data.telat);
  data.denda :=data.telat*500;
                Gotoxy(20,9);Write('Apakah Data Ini Mau Di Hapus [Y/T]: ');Readln(Hapus);
               If Upcase(Hapus)='Y' Then
                 Begin
 For i := 1 to Filesize(Fileperpustakaan) Do
                      Begin
                        Seek(Fileperpustakaan,i-1);
                        Read(Fileperpustakaan,Data);
                        If Data.NoMhs<>NOCR Then
                            Write(FileTmp,Data);
                      End;
                   Close(Fileperpustakaan);
                   Assign(Fileperpustakaan,'perpustakaan.Dat');
                   Erase(Fileperpustakaan);
                   Assign(FileTmp,'perpustakaan.tmp');
                   Rename(FileTmp,'perpustakaan.Dat');
                   Gotoxy(20,10);Write('Nomor Mahasiswa "',NOCR,'" Sudah Di Hapus!');
                 End;
            End
          Else
            Begin
               Gotoxy(20,10);Write('Nomor Mahasiswa "',NOCR,'" Ini Tidak Ada!');
            End;
          Gotoxy(20,11);Write('Mau Hapus Data Lagi [Y/T]: ');Lagi:=Upcase(Readkey);
       End;
  Until Lagi<>'Y';
End;


Function TotalDenda(TDN:Real;n:integer):Real;
Begin
  Totaldenda:=TDN+0;
End;
Procedure Tampil;
Var i      : Integer;
    TDN : Real;

Begin
  Ul:='Y';
  TDN:=0;
  BukaFile;
  If IoResult <> 0 Then
      Write('Maaf Data Masih Kosong ! ')
  Else
     Begin
       Clrscr;
       Writeln(' DATA PEMINJAM BUKU DI PERPUSTAKAAN STMIK MERCUSUAR  ');
       Writeln;
       Writeln('==============================================================================');
       Writeln(' NO   NIM           NAMA             JURUSAN   JUDUL BUKU      TELAT    DENDA' );
       Writeln('==============================================================================');
       i:=0;
       While Not EoF(Fileperpustakaan) Do
          Begin
            Inc(i);
            Read(Fileperpustakaan,Data);
Writeln(i:3,Data.NoMhs:6,Data.Nama:15,Data.jurusan:20,Data.judul:13, data.telat:10:0, data.denda:10:2);
TDN:=TDN+Data.denda;
          End;
       Writeln('==============================================================================');

 Writeln('TOTAL BIAYA DENDA PEMINJAM : ',Totaldenda(TDN,i):1:2);
       Writeln('==============================================================================');
       Close(Fileperpustakaan);
      End;
  Writeln;
  Write('Press Any Key to Continue...');Readln;
  End;

Procedure View_denda;
Var i      : Integer;
     denda2: real;
     Lagi : Char;
Begin
  Ul:='Y';
  Lagi:='Y';
  Repeat
     Clrscr;
     Write('Tampilkan Denda lebih Dari: ');Readln(denda2);
     BukaFile;
     If IoResult <>     0 Then
        Write('Maaf Data Masih Kosong ! ')
     Else
       Begin
 Writeln(' DATA PEMINJAM BUKU DI PERPUSTAKAAN STMIK MERCUSUAR  ');
          Writeln('           DENDA DI ATAS ',denda2:2,' RUPIAH ');
 Writeln;
 Writeln('=============================================================================');
          Writeln(' NO      NIM             NAMA      JURUSAN    JUDUL BUKU      TELAT   DENDA ');
          Writeln('=============================================================================');
          i:=0;
          While Not EoF(Fileperpustakaan) Do
            Begin
              Read(Fileperpustakaan,Data);
 If Data.denda>denda2 Then
                  Begin
                    Inc(i);

Writeln(i:3,Data.NoMhs:6,Data.Nama:20,Data.jurusan:15,Data.judul:10, data.telat:10:0, data.denda:10:2);
                  End;
            End;
          Writeln('=============================================================================');
       Close(Fileperpustakaan);
      End;
     Writeln;
     Write('Mau Lihat Data Lagi [Y/T]: ');Lagi:=Upcase(Readkey);
  Until Lagi<>'Y';
End;

Procedure Hapus_NoMhs;
Var FileTmp      : File of perpustakaan;
     Lagi,Hapus: Char;
     i           : Integer;
Begin
  Ul:='Y';
  Lagi:='Y';
  Clrscr;
  Repeat
     BukaFile;

    If IOResult<>0 Then
         Write('Data Masih Kosong...!')
     Else
       Begin
          Clrscr;
          Assign(FileTmp,'perpustakaan.tmp');
          Rewrite(FileTmp);
          i:=0;
          Gotoxy(20,3);Write('Mau Menghapus No. Mahasiswa Yang Ganjil [Y/T]: ');Readln(Hapus);
          If Upcase(Hapus)='Y' Then
            Begin
               For i := 1 to Filesize(Fileperpustakaan) Do
                 Begin
                   Seek(Fileperpustakaan,i-1);
                   Read(Fileperpustakaan,Data);
                   If (Data.NoMhs Mod 2)=0 Then
                       Write(FileTmp,Data);
                 End;
               Close(Fileperpustakaan);
               Assign(Fileperpustakaan,'perpustakaan.Dat');
               Erase(Fileperpustakaan);
               Assign(FileTmp,'perpustakaan.tmp');
               Rename(FileTmp,'perpustakaan.Dat');
               Gotoxy(20,10);Write('Nomor Mahasiswa Sudah Di Hapus!');
            End;
          Gotoxy(20,11);Write('Mau Hapus Data Lagi [Y/T]: ');Lagi:=Upcase(Readkey);
       End;
  Until Lagi<>'Y';
End;

Begin
  Repeat
     Menu;
     Case Pil Of
     '1' : Tambah;
     '2' : Edit;
     '3' : Hapus;
     '4' : Tampil;
     '5' : View_denda;
     '6' : Hapus_NoMhs;
     End;
  Until (Ul<>'Y') Or (Pil='7');
  End.

Pascal Gaji Karyawan
Picture
Pascal Program gaji karyawan

Program Gaji Karyawan mengunakan record

Program gajikary;
Uses Crt;

 Type Gaji = Record
    NIK : String;
    Nama: String;
    GajiPokok : real;
    Tunjangan  : real;
    total   : real;
 end;
 
Var
   data : Array[1..100] of gaji;
   I ,a  : integer;

   procedure jumlah;
   begin
   data[i].total:=data[i].gajipokok+data[i].tunjangan;
   end;
   begin
   clrscr;
   write('TOTAL INPUT DATA : ');readln(a);
   Clrscr;
   For I := 1 To a Do
   Begin
   CLRSCR;
     Writeln('MASUKAN DATA KE : ',i:2);
     Write('NIK        : ');Readln(data[i].NIK);
     Write('NAMA       : ');Readln(data[i].Nama);
     Write('GAJI POKOK : ');Readln(data[i].gajipokok);
     Write('TUNJANGAN  : ');Readln(data[i].tunjangan);

     jumlah;
     End;
     CLRSCR;
  Writeln('LAPORAN GAJI KARYAWAN ');
     Writeln('PT. MEDIA INVESTASI  INDONESIA');
     Writeln;
     Writeln('======================================================');
     Writeln('| NO |   NIK   |     NAMA  | GAJI POKOK |  TUNJANGAN |    TOTAL   |');
  Writeln('========================================================');

  For I := 1 To a Do

   Begin
      Writeln('|',i:2,' | ', data[i].NIK:8,' | ',data[i].nama:18,' | ',data[i].gajipokok:10:2,' | '
      ,data[i].tunjangan:10:2,' | ',data[i].total:10:2,' | ');
      writeln('=======================================================');
    end;
    readln;
    end.

Pascal Nilai Mahasiswa
Picture
Pascal Program IPK Mahasiswa

Pascal Program IPK Mahasiswa

Program rangking;
(*--------------------------------------*)
(* Menentukan klasifikasi A,B,C,D dan E *)
(*  Terhadap nilai akhir mahasiswa      *)
(* -------------------------------------*)

Uses crt;
var
a , b , c, d ,e,f : real;
Grade, keterangan: string;
NIM, Nama, Jurusan : string;
Jenjang : string [2];
lagi:char;
begin
lagi:='Y';
repeat
clrscr;
writeln('--------------------------------------------');
writeln(' MOHON PERHATIKAN SAAT PROSES INPUT DATA  ');
writeln('                                          ');
writeln(' 1. Jumlah Absen range 1 .............. 14');
writeln(' 2. Nilai Tugas, UTS , UAS range 10 ...100 ');
writeln('--------------------------------------------');
writeln('                                           ');
writeln('                                           ');
writeln('============================================');
writeln('                                            ');
writeln('    DATA NILAI MAHASISWA STMIK     ');
writeln('                 TAHUN 2010                 ');
writeln('                                            ');
writeln('----------------INPUT DATA -----------------') ;
write(' Masukan NIM         : '); readln(NIM);
write(' Masukan Nama        : '); readln(Nama);
write(' Jenjang Pendidikan  : '); readln(jenjang);
write(' Program Studi       : '); readln( jurusan);
writeln('                                           ');
Writeln(' ---------------- INPUT NILAI ---------------') ;
Write(' Masukan Total Absen : '); readln(a);
write(' Masukan nilai Tugas : '); readln(b);
write(' Masukan nilai UTS   : '); readln(c);
write(' Masukan nilai UAS   : '); readln(d);
writeln('--------------------------------------------  ');
e:=a/14*100;
f:=e*10/100 + b*0.25 + c*0.25 + d*0.40;

if f >= 85 then
    Grade :='A'
else
if  f >= 75 then
   Grade :='B'
else
if f >= 60 then
   Grade :='C'
else
if f >= 45 then
   Grade :='D'
else
    Grade :='E';
begin
if f >= 85 then
   keterangan :='LULUS'
else
if f >= 75 then
   keterangan :='LULUS'
else
if f >= 60 then
   keterangan :='LULUS'
else
if f >= 45 then
   keterangan :='REMEDIAL'
else
    keterangan :='GAGAL';
end;
writeln('                                             ');
writeln('                                             ');
writeln('=============================================');
writeln('|                  HASIL                    |');
writeln('=============================================');
Writeln('1. NIM                  : ',NIM);
writeln('2. Nama                 : ',Nama);
Writeln('3. Jenjang Pendidikan   : ',Jenjang);
Writeln('4. Program Studi        : ',Jurusan);
Writeln('5. Total Absen          : ',a:2:0);
writeln('6. Nilai Tugas          : ',b:2:0);
writeln('7. Nilai UTS            : ',c:2:0);
writeln('8. Nilai UAS            : ',d:2:0);
writeln('9. Nilai Total          : ',f:2:0);
writeln('10.Grade                : ',Grade);
writeln('11.Keterangan           : ',Keterangan);
writeln('=============================================');
writeln('                                             ');
writeln('                                             ');
write('Mau coba lagi ( Y/T) ? '); readln(lagi);
until upcase(lagi)='T';
readln;
end.
Picture
Pascal Program tulisan berjalan

Pascal Program Tulisan Berjalan 

Program berjalan;
uses crt;
var
x,y :byte;

{putaran pertama}
begin
clrscr;
textcolor(white);
x:=70;
y:=12;
repeat
delay(20000);
gotoxy(x+1,y);writeln('SELAMAT   ');
gotoxy(x,y);writeln(' ');
x:=x-1;
until(x=30);

begin

x:=2;
y:=12;
repeat
delay(20000);
gotoxy(x-1,y); writeln(' ');
gotoxy(x,y);writeln('DATANG');
x:=x+1;
until (x > 40);
gotoxy(32,12);
writeln('SELAMAT');

delay(60000);
delay(60000);
delay(60000);
delay(60000);
delay(60000);
delay(60000);
begin
delay(60000);
delay(60000);
delay(60000);
delay(60000);
delay(60000);
clrscr;
x:=2;
y:=2;
repeat
delay(10000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>78);
x:=78;
y:=2;
repeat
delay(10000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>24);
x:=78;
y:=24;
repeat
delay(10000);
gotoxy(x+15,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=1);
x:=2;
y:=24;
repeat
delay(10000);
gotoxy(x,y+1);
gotoxy(x,y);writeln('*');
y:=y-1;
until(y<4);

{ putaran kedua }
textcolor(yellow);
x:=2;
y:=4;
repeat
delay(20000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>74);
x:=74;
y:=4;
repeat
delay(20000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>22);
x:=74;
y:=22;
repeat
delay(20000);
gotoxy(x+15,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=6);
x:=6;
y:=22;
repeat
delay(20000);
gotoxy(x,y+1);
gotoxy(x,y);writeln('*');
y:=y-1;
until(y<6);

{ putaran ketiga }
textcolor(10);
x:=6;
y:=6;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>70);
x:=70;
y:=6;
repeat
delay(30000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>20);
x:=70;
y:=20;
repeat
delay(30000);
gotoxy(x+1,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=10);
x:=10;
y:=20;
repeat
delay(30000);
gotoxy(x,y+1);
gotoxy(x,y);writeln('*');
y:=y-1;
until(y<8);


{ putaran keempat }

textcolor(9);
x:=10;
y:=8;
repeat
delay(40000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>64);
x:=64;
y:=8;
repeat
delay(40000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>18);
x:=64;
y:=18;
repeat
delay(40000);
gotoxy(x+1,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=14);
x:=14;
y:=18;
repeat
delay(40000);
gotoxy(x,y+1);
gotoxy(x,y);writeln('*');
y:=y-1;
until(y<14);
textcolor(white);
x:=14;
y:=13;
repeat
delay(60000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>34);
delay(60000);
gotoxy(36,13);
textcolor(red);
writeln('FINISH');
textcolor(white);


begin
delay(60000);
delay(60000);
delay(60000);
delay(60000);
delay(60000);
clrscr;
delay(60000);
delay(60000);
delay(60000);
delay(60000);
textcolor(yellow);
x:=8;
y:=2;
repeat
delay(30000);
gotoxy(x+1,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=1);

x:=2;
y:=2;
repeat
delay(30000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>6);

x:=2;
y:=6;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>8);


x:=8;
y:=6;
repeat
delay(30000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>10);


x:=8;
y:=10;
repeat
delay(30000);
gotoxy(x+1,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=1);

x:=10;
y:=2;
repeat
delay(30000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>10);

x:=10;
y:=10;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>18);

x:=18;
y:=10;
repeat
delay(30000);
gotoxy(x,y+1);
gotoxy(x,y);writeln('*');
y:=y-1;
until(y=1);

x:=20;
y:=2;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>28);


x:=24;
y:=2;
repeat
delay(30000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>10);

{e}

x:=35;
y:=2;
repeat
delay(30000);
gotoxy(x+1,y);
gotoxy(x,y);writeln('*');
x:=x-1;
until(x=30);

x:=30;
y:=2;
repeat
delay(30000);
gotoxy(x,y-1);
gotoxy(x,y);writeln('*');
y:=y+1;
until(y>10);

x:=30;
y:=10;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>35);


x:=30;
y:=6;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>35);


x:=37;
y:=2;
repeat
delay(30000);
gotoxy(x-1,y);
gotoxy(x,y);writeln('*');
x:=x+1;
until(x>42);

Picture

Pascal Nilai Akhir Mahasiswa 

Total Kehadiran absen maximum 14 kali 

program nilai;
uses crt;
var
a,b,c,d,e,f :real;
Grade , Keterangan :string;
Nama, NIM, Jenjang, Prodi: string[20];
begin
clrscr;
writeln('===========================================');
write('Input Nama               :');readln(nama);
write('Input NIM                :');readln(nim);
write('Input Jenjang Pendidikan :');readln(jenjang);
write('Input Program Studi      :');readln(prodi);
write('Input total absen        :');readln(a);
write('Input Nilai Tugas        :');readln(b);
write('Input Nilai UTS          :');readln(c);
write('Input Nilai UAS          :');readln(d);
e:=a/14*100;
f:=e*0.10 + b*0.25 + c*0.25 + d*0.40;
if f >= 85 then
grade:='A'
else
if f >=80 then
grade:='B'
else
grade:='C';

begin
if f >=85 then
Keterangan:='Lulus'
else
if f >= 75 then
keterangan :='Remedal'
else
keterangan:='Tidak lulus';
end;

writeln('                                          ');
writeln('------------------------------------------');
writeln('                  Hasil                   ');
writeln('------------------------------------------');
writeln('| Nama                    | ',Nama      ,' ');
writeln('| NIM                     | ',NIM       ,' ');
writeln('| Jenjang Pendidikan      | ',Jenjang   ,' ');
writeln('| Program Studi           | ',Prodi    ,'  ');
writeln('| Nilai Total             | ',f:2:0     ,' ');
writeln('| Grade                   | ',grade     ,' ');
writeln('| Keterangan              | ',keterangan ,'');
writeln('===========================================');
readln;
end.