Wednesday, 31 July 2013

Program Queue (Antrian) Pascal

Saya ingin berbagi sedikit tentang program queue(antrian) dalam bahasa pemrograman pascal mudah- mudah bisa bermanfaat bagi kita semua berikut saya berikan source codenya :

program queue;

uses crt;

  type

    PPNode = ^Pnode;

    PNode  = ^Tnode;

    Tnode =  record

      data : integer;

      next : PNode;

    end;



   procedure tambah(d,b:PPNode; nilai : integer);

     var

        temp: Pnode;

     Begin

        new(temp);

        temp^.data := nilai;

        temp^.next := nil;

        if (d^ = nil) then

          begin

            d^:=temp;

            b^:=temp;

          end

        else

          begin

            b^^.next:=temp;

            b^:=temp;

          end;



   end;

   procedure hapus(d,b:PPNode);

     var

      temp : PNode;

     begin

       if (d^ = nil) then begin

         writeln('Tidak terdapat record di dalam queue');

       end

       else

         begin

          temp := d^;

          d^ := temp^.next;

          dispose(temp);

       if (d^ = nil)then

         begin

          b^:= nil;

         end;

       end;

   end;

   procedure tampilkan (q: Pnode);

    var

     nilai: integer;

    begin

     while (q<> nil) do begin

      nilai:= q^.data;

      writeln(nilai);

      q := q^.next;

    end;

    end;

var

 depan, belakang: Pnode;

begin

 clrscr;

  depan := nil;

  belakang := nil;

  tambah (@depan, @belakang, 100);

  tambah (@depan, @belakang, 200);

  tambah (@depan, @belakang, 300);

  tambah (@depan, @belakang, 400);

  writeln ('Nilai di dalam queue : ');

  tampilkan(depan);

  writeln;

  hapus (@depan, @belakang);

  writeln('setelah record terdepan dihapus : ');

  tampilkan(depan);

  readln;

end.


berikut outputnya :

No comments:

Post a Comment