Sunday, November 11, 2018

PROGRAM PARKIR SEDERHANA (PASCAL)


Source kode :

program Parkir;
uses crt;
type pointer = ^Typedata;
        TypeData = Record
        baris    : integer;
        kolom     : integer;
        next     : pointer;
end;
Var
    L : Pointer;
    Baru : pointer;
    bantu : Pointer;
        c : integer;
 a:array[1..4,1..10] of integer;
 pilih,baris,kolom:integer;
 ketemu:boolean;
 label menu;

 
begin
ketemu:=false;
for baris:=1 to 4 do
begin
for kolom:=1 to 10 do
          begin
          a[baris,kolom]:=0;
          end;
end;






menu:
clrscr;
writeln('||______________PROGRAM PARKIR OTOMATIS_____________||');
writeln('||==================================================||');
writeln('||             1. KENDARAAN MASUK                   ||');
writeln('||             2. KENDARAAN KELUAR                  ||');
writeln('||             3. LIHAT DATA KENDARAAN              ||');
writeln('||             4. SELESAI                           ||');
writeln('||==================================================||');
write('||    Masukan Pilihan : ');readln(pilih);case pilih of
1: begin
for baris:=1 to 4 do
begin
    for kolom:=1 to 10 do
    begin
    if a[baris,kolom]=0 then
    begin
        ketemu:=true;
        a[baris,kolom]:=1;
        writeln('Silahkan parkirkan kendaraan anda di lokasi [',baris,'.',kolom,']');
    New (Baru);
    Baru^.baris := baris;
    Baru^.kolom := kolom;
    Baru^.next := Nil;
if L = Nil then L := Baru
    else
      begin
      Baru^.next := L;
      L := Baru;
      End;

    end
    else
    begin
    ketemu:=false;
    end;
    if ketemu=true then break;
    end;
    if ketemu=true then break;
   end;

   if a[baris,kolom] > 40 then
    writeln('Maaf parkir sudah penuh :) ');
   readln;
  goto menu;
end;
2: begin
Bantu := L;
    if Bantu = Nil then
writeln ('List kosong...')
    else
     begin
              while bantu^. next^. next <> nil do
              Bantu := bantu^.next;
              New (Baru);
 Baru := Bantu ^. next;
     Bantu^. next := nil;
     writeln('masukkan tempat');
      writeln('Baris:');readln(baris);
     writeln('Kolom:');readln(kolom);
       writeln ('--------------------------------');
       dispose (Baru);
 End;
     if a[baris,kolom]=0 then
     writeln('Maaf lokasi parkir yang anda maksud kosong :)')
      else writeln('parkiran yang di',baris,',',kolom,' keluar');
      a[baris,kolom]:=0;
      goto menu;
  end;
3: Begin
Bantu := L;
c := 4;
    while Bantu <> Nil Do
    Begin
    writeln ('data parkir :', Bantu ^. baris,',',Bantu ^.kolom);
    writeln ('---------------------------');
    Bantu := Bantu ^. next;
    dec(c);
    End;
    write ('Tekan ENTER untuk kembali');
    READLN;
    goto menu;
  End;
4 : begin
writeln('=========TERIMA KASIH=========');
writeln('======SAMPAI JUMPA LAGI=======');
writeln('==============================');
write('tekan ENTER untuk keluar !! ');
readln;
end;
end;
end.


HASIL SETELAH PROGRAM DIJALANKAN
1.   Tampilan awal




Diatas adalah tampilan awal program, disana kita bisa melihat ada beberapa menu yang digunakan untuk melakukan perintah pada program tersebut, seperti jika ada kendaraan masuk maka user tinggal memilih nomor satu dan program akan menjalankan perintah nomor satu yaitu menambahkan data parkir secara otomatis.





2. Menu 1 (Kendaraan masuk) 





Pada menu pertama yaitu untuk menjalankan perintah untuk menambahkan data parkir secara otomatis.

3. Menu 2 (Kendaraan Keluar)

Pada menu ini digunakan jika ada kendaraan yang akan keluar dari tempat parkir maka user harus memasukan data parkir kendaraan tersebut berupa nomor lokasi tempat kendaraan tersebut terparkir. 
4. Menu 3 (Menampilkan data)

Disini user dapat melihat data kendaraan yang terparkir dan mengetahui jumlah kendaraan yang sedang terparkir.

5. Menu 4 (SELESAI)
Jika telah selesai menggunakan program ini maka pilih menu SELESAI dan program akan keluar secara otomatis.
 




No comments:

Post a Comment