Langsung ke konten utama

REVIEW WEBSITE MEDIAKOMEN.COM || WEBSITE DAFTAR JADI BUZZER || PENGHASIL UANG VIA WEBSITE || RECEHAN

REVIEW WEBSITE MEDIAKOMEN.COM || WEBSITE DAFTAR JADI BUZZER || PENGHASIL UANG VIA WEBSITE || RECEHAN REVIEW WEBSITE MEDIAKOMEN.COM || WEBSITE DAFTAR JADI BUZZER || PENGHASIL UANG VIA WEBSITE || RECEHAN REVIEW WEBSITE MEDIAKOMEN.COM || WEBSITE DAFTAR JADI BUZZER || PENGHASIL UANG VIA WEBSITE || RECEHAN REVIEW WEBSITE MEDIAKOMEN.COM || WEBSITE DAFTAR JADI BUZZER || PENGHASIL UANG VIA WEBSITE || RECEHAN #REVIEWWEBSITE #penghasiluang #receh Berikut Link Webistenya : https://www.mediakomen.com/ 0:00:00 ▼ EXPAND FOR NAVIGATION ▼ 0:01 CH 0: Opening 0:08 CH 1: Story 0:10 CH 2: Closing

Program Queue atau Antrian Pascal

Program Queue atau Antrian Pascal


Selamat malam sob... kali ini ane mau post nih salah satu tugas struktur data semester 3, yaitu Program Antrian atau sering disebut Queue, langsung aja sob liat kodingannya,..

COPAS BOLEH, PELAJARI HARUS!!!..

====================================================================

 Program queue;
 uses wincrt;
 type antrian = ^node;
  node = record
  isi : String[10];
  next : antrian;
  end;
 var
  depan, belakang : antrian;
  pointer, x : string;
  pil : char;

  {Procedure baru digunakan untuk inisialisasi awal list}
  Procedure baru(x : string; var tunjuk : antrian);
  begin
  new(tunjuk);
  tunjuk^.isi := x;
  tunjuk^.next := nil;
  end;

  {Function isempty digunakan untuk mengecek apakah suatu list kosong atau tidak}
  Function isempty(depan, belakang : antrian):boolean;
  begin
  isempty := (depan=nil) and (belakang=nil) = true
  end;

  {procedure tambahAntri digunakan untuk menambahkan jumlah orang dalam antrian}
  procedure tambahAntri(var belakang : antrian);
  var x : string;
  tunjuk : antrian;
  begin
  write('Masukan nama orang yang mau masuk antrian : '); readln(x);
  baru(x,tunjuk);
  belakang^.next := tunjuk;
  belakang := tunjuk;
  end;

  {procedure hapusDepan digunakan untuk menghapus list dalam antrian}
  procedure hapusDepan(var depan, belakang : antrian);
  var bantu : antrian;
  begin
  if isempty(depan, belakang) then
  writeln('antrian kosong')
  else if depan = belakang then
  begin
  depan := nil;
  belakang := nil;
  end
  else
  begin
  bantu:=depan^.next;
  depan := bantu;
  end;
  end;

  {Procedure selesaiAntri digunakan untuk mengambik orang yang sudah selesai antri}
  procedure selesaiAntri(var depan, belakang:antrian; var x : string);
  begin
  if depan = nil then
  x:= 'Antrian kosong'
  else
  begin
  x := depan^.isi;
  hapusDepan(depan, belakang);
  end;
  end;

  {procedure buatAntrian untuk membangun antrian dengan input data secara interaktif}
  procedure buatAntrian(var depan, belakang:antrian);
  var c : char;
  tunjuk : antrian;
  i : integer;
  begin
  i := 0;
  depan := nil;
  belakang := nil;
  repeat
  i := i+1;
  write('masukan nama ke-',i,'='); readln(x);
  baru(x,tunjuk);
  if isempty(depan, belakang) then
  begin
  depan := tunjuk;
  belakang := tunjuk;
  end
  else
  begin
  belakang^.next := tunjuk;
  belakang := tunjuk;
  end;
  repeat
  write('tambah data yang antri [Y/T] = '); readln(c);
  until c in ['T','t','y','Y'];
  until c in ['T','t'];
  end;

  {procedure cetak untuk mencetak isi antrian, pintu keluar antrian disebelah kanan dan pintu masuk antrian disebelah kiri}
  procedure cetak(depan : antrian; var output : string);
  var bantu : antrian;
  y : string;
  begin
  bantu := depan;
  output := 'loket pendaftaran';
  if isempty(depan, belakang) then
  output := ' antrian kosong'
  else
  begin
  while bantu <> nil do
  begin
  y := bantu^.isi;
  output := y+'->>'+output;
  bantu:=bantu^.next;
  end;
  output := 'pintu masuk antrian ->> '+output;
  end;
  end;

begin
buatAntrian(depan, belakang);
repeat
repeat
{menu utama}
writeln;
writeln('--------------------------------------------------------');
writeln('[1] Buat Antrian baru       ');
writeln('[2] Tambah antrian pendaftar      ');
writeln('[3] ambil orang yg selesai daftar ');
writeln('[4] loket pendaftaran ditutup     ');
writeln('--------------------------------------------------------');
write('pilihan anda : '); //pil := readkey;
readln(pil);
writeln(pil);
writeln;
until (pil>= '1') and (pil <= '4');

{case pil of mengacu pada menu pilihan yang akan mengaktifkan salah satu prosedure yang dipilih}
case pil of
'1' : begin
buatAntrian(depan,belakang);
writeln;
writeln;
writeln;
  end;
'2' : begin
tambahAntri(belakang);
writeln;
writeln('setelah antrian menjadi : ');
cetak(depan, pointer);
writeln(pointer);
writeln;
writeln;
writeln;
   end;
'3' : begin
selesaiAntri(depan,belakang,x);
writeln(' ',x,' telah selesai mendaftar, maka ia keluar dari antrian');
writeln;
writeln(' antrian menjadi : ');
cetak(depan, pointer);
writeln(pointer);
writeln;
writeln;
writeln;
   end;
'4' : begin
writeln('loket telah ditutup ');
writeln('antrian dilanjutkan hari berikutnya');
exit;
  end;
end;
until (pil='8');
end.
end.

====================================================================


OUTPUT



========================================================================


Semoga bermanfaat😎





Komentar

Posting Komentar

Postingan populer dari blog ini

Program Quick Sort Pascal

Selamat malam sob... kali ini ane mau post nih salah satu tugas struktur data semester 3 lagi, yaitu Program Quick sort, apa sih Quick sort itu?... ane jelasin dulu sob dari mbah google... Quick Sort merupakan salah satu algoritma pengurutan data yang menggunakan teknik membagi  data menjadi partisi-partisi. Metode Quick Sort disebut juga dengan nama partition exchange sort.  Untuk memulai proses pengurutan, pertama-tama sebuah data dipilih dari kelompok data sebagai data pivot. Posisi data pivot dapat dicari dengan menggunakan rumus :     i  = (indeks awal + indeks akhir) div 2   Kemudian elemen-elemen data akan diatur, sehingga nilai data pivot yang terletak di posisi ke I memenuhi kondisi sebagai berikut : Semua data di posisi ke 1 sampai dengan ke I-1  lebih kecil atau sama dengan pivot atau data[i]<=pivot. Semua data di posisi ke I+1 sampai dengan ke N  lebih besar atau sama dengan pivot atau data[i]>=pivot. Contoh  : Ad...

Program Pascal Binary Tree

Program Pascal Binary Tree Ok sob kali ini saya akan memposting sebuah program pascal binary tree beserta outputnya : Lansgung aja sob... -------------------------------------------------------------------------------------------------------------------------- Program binary; uses wincrt; type tptr = ^node; node = record left :tptr; data : integer; right : tptr; end; var c,i,x,n: integer; temp, trail, r, t : tptr; procedure insert(x:integer; var t : tptr); begin new(temp); temp^.left:=nil; temp^.data:=x; temp^.right:=nil; r := t; trail := nil; while(r<>nil ) do begin trail := r; if r^.data > x then r := r^.left else r := r^.right; end; if trail=nil then t := temp else if trail^.data > x then trail^.left := temp else trail^.right := temp; end; procedure inOrder(t:tptr); begin if t <> nil then begin inOrder(t^.left); write(t^.data:5); inOrder(t^.right); end; end; procedure postOrder(...

Memasang Gambar Pada Tombol di Aplikasi Menggunakan (ImageIcon) Dalam Java Blue-j

Memasang Gambar Pada Tombol di Aplikasi Menggunakan (ImageIcon) Dalam Java Blue-j ImageIcon adalah salah satu komponen pada untuk membuat gambar pada sebuah tombol di aplikasi yang kita buat. Saat ini kita menggunakan bahasa Java dan dengan platform Blue-j untuk pengkodingannya. Kita bisa pahami kode java di bawah ini untuk kode aplikasi tombol yang bergambar. ======================================================================== import java.util.Calendar; import javax.swing.*; import java.awt.*; import java.text.SimpleDateFormat; import java.awt.event.*; import java.util.*; public class tombolGambar extends JFrame{ public tombolGambar(){ super("Tombol Bergambar"); setSize(500, 200); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); JLabel labelWaktu = new JLabel("Waktu sekarang : 00:00:00 "); ImageIcon ikonWaktu = new ImageIcon("D:\\Belajar\\java\\icons8-time-64.pn...