Contoh Script program Pascal


program Data_Kesehatan_Siswa;

uses crt;

const
     MaxData = 10;

Type
    Siswa = record
          Nama : string;
          Umur : integer;
          Tinggi, Berat : real;
    end;

    ArraySiswa = array [0..MaxData] of Siswa;

var
   menu : integer;
   DataSiswa : ArraySiswa;

procedure InisialisasiData(var DataSiswa:ArraySiswa);
begin
     DataSiswa[0].Nama   = 'Alfianto Prasetiyo';
     Datasiswa[0].NIS = 10224401;
     Datasiswa[0].Jenis Kelamin = 'Laki-laki';
     DataSiswa[0].Umur   = 17;
     DataSiswa[0].Tinggi = 180;
     DataSiswa[0].Berat   = 50;

     DataSiswa[1].Nama   = 'Arif Maulana';
     Datasiswa[1].NIS = 10224402;
     Datasiswa[1].Jenis Kelamin = 'Laki-laki';
     DataSiswa[1].Umur   = 18;
     DataSiswa[1].Tinggi = 168;
     DataSiswa[1].Berat   = 47;

     DataSiswa[2].Nama   = 'Budi Susanto';
     Datasiswa[2].NIS = 10224403;
     Datasiswa[2].Jenis Kelamin = 'Laki-laki';
     DataSiswa[2].Umur   = 18;
     DataSiswa[2].Tinggi = 183;
     DataSiswa[2].Berat   = 52;

     DataSiswa[3].Nama   = 'Citra Ayu Dewi';
     Datasiswa[3].NIS = 10224404;
     Datasiswa[3].Jenis Kelamin = 'Perempuan';
     DataSiswa[3].Umur   = 17;
     DataSiswa[3].Tinggi = 165;
     DataSiswa[3].Berat   = 45;

     DataSiswa[4].Nama   = 'Dewi Nandiya Putri';
     Datasiswa[4].NIS = 10224405;
     Datasiswa[4].Jenis Kelamin = 'Perempuan';
     DataSiswa[4].Umur   = 17;
     DataSiswa[4].Tinggi = 159;
     DataSiswa[4].Berat   = 52;


     DataSiswa[5].Nama   = 'Fani Septiani';
     Datasiswa[5].NIS = 10224406;
     Datasiswa[5].Jenis Kelamin = 'Perempuan';
     DataSiswa[5].Umur   = 16;
     DataSiswa[5].Tinggi = 168;
     DataSiswa[5].Berat   = 47;

     DataSiswa[6].Nama   = 'Hidayat Abdullah';
     Datasiswa[6].NIS = 10224407;
     Datasiswa[6].Jenis Kelamin = 'Laki-laki';
     DataSiswa[6].Umur   = 16;
     DataSiswa[6].Tinggi = 157;
     DataSiswa[6].Berat   = 40;

     DataSiswa[7].Nama   = 'Intan Nidiya';
     Datasiswa[7].NIS = 10224408;
     Datasiswa[7].Jenis Kelamin = 'Perempuan';
     DataSiswa[7].Umur   = 17;
     DataSiswa[7].Tinggi = 174;
     DataSiswa[7].Berat   = 51;

     DataSiswa[8].Nama   = 'M. Miftah Efendi';
     Datasiswa[8].NIS = 10224409;
     Datasiswa[8].Jenis Kelamin = Laki-laki;
     DataSiswa[8].Umur   = 16;
     DataSiswa[8].Tinggi = 178;
     DataSiswa[8].Berat   = 50;

     DataSiswa[9].Nama   = 'Zainal Mustofa';
     Datasiswa[9].NIS = 10224410;
     Datasiswa[9].Jenis Kelamin = Laki-laki;
     DataSiswa[9].Umur   = 17;
     DataSiswa[9].Tinggi = 184;
     DataSiswa[9].Berat   = 60;

end;

procedure TambahData(var DataSiswa:ArraySiswa);
var
   i:integer;
begin
     for i:= 0 to MaxData do
     begin
          writeln('Siswa ',i+1);
          write  ('Nama Siswa          : '); readln(DataSiswa[i].Nama);
          write  ('Umur Siswa          : '); readln(DataSiswa[i].Umur);
          write  ('Tinggi Badan Siswa  : '); readln(DataSiswa[i].Tinggi);
          write  ('Berat Badan Siswa   : '); readln(DataSiswa[i].Berat);
          writeln;
     end;

     writeln('Pengisian data selesai.');
     write('Tekan sembarang tombol untuk kembali ke menu'); readln;
end;

procedure TampilData(DataSiswa:ArraySiswa);
var
   i:integer;
begin
     for i:= 0 to MaxData do
     begin
          writeln('Siswa ',i+1);
          writeln('Nama Siswa          : ',DataSiswa[i].Nama);
          writeln('Umur Siswa          : ',DataSiswa[i].Umur);
          writeln('Tinggi Badan Siswa  : ',DataSiswa[i].Tinggi:0:2);
          writeln('Berat Badan Siswa   : ',DataSiswa[i].Berat:0:2);
          writeln;
     end;

     write('Tekan sembarang tombol untuk kembali ke menu'); readln;
end;

procedure CariDataUmur(DataSiswa:ArraySiswa);
var
   i,j,umur:integer;

begin
     write('Data umur yang dicari : '); readln(umur);

     j:=1;
     for i:=0 to MaxData do
     begin
          if(DataSiswa[i].Umur = umur) then
          begin
               writeln('Siswa ',j);
               writeln('Nama Siswa          : ',DataSiswa[i].Nama);
               writeln('Umur Siswa          : ',DataSiswa[i].Umur);
               writeln('Tinggi Badan Siswa  : ',DataSiswa[i].Tinggi:0:2);
               writeln('Berat Badan Siswa   : ',DataSiswa[i].Berat:0:2);
               writeln;
               j:=j+1;
          end;
     end;

     write('Tekan sembarang tombol untuk kembali ke menu'); readln;
end;

procedure CariDataBerat(DataSiswa:ArraySiswa);
begin


end;

procedure CariDataTinggi(DataSiswa:ArraySiswa);
begin


end;

begin
     repeat
          clrscr;

          writeln('---------------------------------Menu---------------------------------');
          writeln('1. Tampil data siswa.');
          writeln('2. Tambah data siswa.');
          writeln('3. Cari data siswa berdasarkan umur.');
          writeln('4. Cari data siswa berdasarkan tinggi badan.');
          writeln('5. Cari data siswa berdasarkan berat badan.');
          writeln('6. Urutkan data berdasarkan umur termuda sampai tertua.');
          writeln('7. Urutkan data berdasarkan tinggi badan terkecil sampai terbesar.');
          writeln('8. Urutkan data berdasarkan berat badan terkecil sampai terbesar.');
          writeln('0. Keluar');
          writeln('----------------------------------------------------------------------');
          writeln;

          write('Pilih menu (1-8 / 0) : '); readln(menu);

          clrscr;

          if(menu=1) then TampilData(DataSiswa)
          else if(menu=2) then TambahData(DataSiswa);
          else if(menu=3) then CariDataUmur(DataSiswa);
      until(menu = 0);
end.