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...

Aplikasi Penerimaan Siswa Dan Manajemen Sekolah Menggunakan Java Netbeans

 Aplikasi Penerimaan Siswa Dan Manajemen Sekolah Menggunakan Java Netbeans Hay Gaes!!! Kali ini mimin akan membagikan tutorial pembuatan aplikasi penerimaan siswa dan manajemen sekolah menggunakan Java Netbeans, Untuk codingannya nanti mimin akan berikan link di akhir artikel ini ya. Berikut jika kalian ingin melihat video aplikasi yang sudah terbuat. Selamat menikmati: https://youtu.be/7qp_HjnumYk Jika kalian sudah melihat video aplikasi yang sudah mimin buat. Untuk source code nya akan mimin berikan di link komentar ya. 

Bubble Sort Code Program Pascal

Bubble Sort Code Program Pascal Ok sob kali ini mimin akan berbagi source code program pascal nih tentang bubble sort, langsung aja sob perhatiin ya. ======================================================================== Program Bubble_Sort; uses crt; var i,j,k,temp,n : integer; A,B,C : array [1..100] of integer; begin clrscr; write('Banyaknya elemen array : '); readln(n); {Input Data} for i := 1 to n do begin write('Elemen ke-', i,':'); readln(A[i]); end; {Cetak Array Sebelum Pengurutan} writeln; write('Sebelum diurutkan : '); for i := 1 to n do write(A[i], ' '); writeln; writeln('Proses Pengurutan Bubble :'); for i := 1 to n-1 do begin for j := n downto i+1 do begin if A[j-1] > A[j] then begin temp := A[j-1]; A[j-1] := A[j]; A[j] := temp; end; end; {cetak Array tiap langkah pengurutan} writeln; write('Hasil akhir langkah ke-', i,':'); for k := 1 to n do writ...