Senin, 16 Maret 2015

Program data Mahasiswa menggunakan pascal

^^ Berbagi sedikit pengetahuan
 Semoga Bermanfaat

Aplikasi : Free Pascal IDE

Screenshoot Program

Gambar 1.1 Tampilan awal program
  
 
Gambar 1.2 Tampilan ketika dipilih 1 


 
Gambar 1.3 Tampilan setelah dipilih 2 dan pilihan 1 telah diinput













Source code program 
Program DataMahasiswa;
uses crt;
type record_siswa = record
     NIM          : string;
     nama         : string;
     nilai        : real;
     prodi        : string;
     matkul       : string;
end;

var  array_siswa  : array[1..50] of record_siswa;
     jawab        : string;
     pilih        : shortint;
     i,n        : integer;

Procedure input;
 begin
  n:=0;
  repeat
   clrscr;
   inc(n);
   writeln('              >>> DATA MAHASISWA <<<'                  );
   writeln;
   writeln('******************************************************');
   writeln('*               INPUT DATA KE-',n,'                  *');
   writeln('******************************************************');
   with array_siswa[n] do
   begin
   writeln('*                                                    *');
   writeln('* NIM              :                                 *');
   writeln('* Nama Mahasiswa   :                                 *');
   writeln('* Program Studi    :                                 *');
   writeln('* Mata Kuliah      :                                 *');
   writeln('* Nilai            :                                 *');
   writeln('*                                                    *');
   writeln('******************************************************');
   gotoxy(22,7); readln(nim);
   gotoxy(22,8); readln(nama);
   gotoxy(22,9); readln(prodi);
   gotoxy(22,10);readln(matkul);
   gotoxy(22,11);readln(nilai);
   end;
  writeln;
  gotoxy(1,15); write('Apakah Anda ingin input data lagi [Y/T] ? '); readln(jawab);
  until ((jawab='T') or (jawab='t'));
 readkey;
 end;

Function grade(var nilai:real): string;
 begin
  if ((nilai>=80) and (nilai<=100)) then grade:='A' else
  if nilai>=75 then grade:='B+' else
  if nilai>=70 then grade:='B'  else
  if nilai>=65 then grade:='C+' else
  if nilai>=60 then grade:='C'  else
  if nilai>=55 then grade:='D+' else
  if nilai>=50 then grade:='D'  else
  if nilai<50  then grade:='E';
 end;

Function ket(var nilai:real): string;
 begin
  if nilai>=60 then ket:='Lulus' else ket:='Gagal';
 end;

Procedure tampilan;
 begin
  clrscr;
  writeln(‘*******************************************************');
  writeln('*                   ^ DATA MAHASISWA ^                *');
  writeln('*******************************************************');
  writeln('* No *   NIM    *         Nama        *   Mata Kuliah   * Nilai * Keterangan *');
writeln('*********************************************************');
  for i:=1 to n do
  begin
   gotoxy(1,5+i); writeln('* ',i);
   gotoxy(6,5+i); writeln('* ',array_siswa[i].NIM);
   gotoxy(18,5+i);writeln('* ',array_siswa[i].nama);
   gotoxy(40,5+i);writeln('* ',array_siswa[i].matkul);
   gotoxy(58,5+i);writeln('*   ',grade(array_siswa[i].nilai));
   gotoxy(66,5+i);writeln('*    ',ket(array_siswa[i].nilai));
   gotoxy(79,5+i);writeln('*');
  end;
  writeln('*******************************************************');
  readkey;
 end;

Begin
 repeat
 clrscr;
  writeln(' >>> Data Mahasiswa <<<');
  writeln;
  writeln('[1] Input Data Mahasiswa');
  writeln('[2] Tampilan Data Mahasiswa');
  writeln('[0] Exit');
  writeln('---------------------------');
  write  ('Pilihan [1][2][0] : '); readln(pilih);
  case pilih of
   1 : input;
   2 : tampilan;
   0 : EXIT;
  end;
 until pilih=0;
 readkey;
end.

Tidak ada komentar:

Posting Komentar