Kelas: D
NIM: 1910512132
c. Bisa diisi
Jawab: Cirinya adalah jika R < n – 1
d. Ada isinya
Jawab: Cirinya adalah jika F < R + 1
e. Antrian tak bisa diisi lagi, tapi belum ada isi antrian yang sudah keluar atau sudah dilayani
Jawab: Cirinya jika dalam algoritma, dapat dituliskan seperti (F = 0; F < R+1; R = n-1)
h. Sisa tempat yang masih bisa diisi hanya ada 10 tempat (elemen)
Jawab: Dalam algoritma, dapat dituliskan seperti (F = 0; n = 9
d. Reset
Jawab: F= 0 dan R= -1
4.) Tulis algoritma yang lengkap untuk mengisi antrian record per record sampai antrian
penuh tak bisa diisi lagi
Jawab: { if ( Counter == n)
printf(“Antrian Penuh”)
else { R = (R+1) % n;
Q[R] = X;
Counter++; }
}
5.) Tulis algoritma yang lengkap untuk mendelete isi antrian record per record sampai
antrian kosong
Jawab: void Delete (void){
if (F < R+1){
F++;
printf( "%c", X);
if (F == n){
Reset ( );
}
}
else
printf("\nAntrian Kosong")
}
6.) Tulis algoritma yang lengkap untuk mendelete isi antrian record per record sebanyak 10
record selama antrian belum penuh. Apabila antrian penuh, walaupun belum mengisi 10
record, proses pengisian dihentikan
Jawab: void Insert (char X){
if (R < 9){
R++;
Q[R] = X;
}
else
printf("\nAntrian Penuh");
}
7.) Tulis algoritma yang lengkap untuk mendelete isi antrian record per record sebanyak 10
record selama antrian masih ada isinya. Bila antrian sudah kosong, walaupun belum
mendelete sebanyak 10 record, maka proses delete dihentikan
Jawab: void Delete (void){
if (F < R+1){
F++;
printf( "%c", X);
if (F == 10){
Reset ( );
}
}
else
printf("\nAntrian Kosong")
}
8.) Tulis algoritma untuk menghitung dan mencetak jumlah tempat (elemen) yang ada isinya
Jawab: int main() {
int sum = 0;
queue<int> antrian;
antrian.push(1);
antrian.push(8);
antrian.push(3);
antrian.push(6);
antrian.push(2);
//Outputnya akan jadi 5
return 0;
}
9.) Tulis algoritma untuk menghitung dan mencetak jumlah tempat yang masih bisa diisi
Jawab: include <iostream>
#include <queue>
using namespace std;
int main () {
queue<int> myints;
cout << "Antrian awal" << myints.size() << '\n';
for (int i=0; i<5; i++) myints.push(i); // mengisi queue yang ada
cout << "Ukuran setelah di inisiasi: " << myints.size() << '\n';
myints.pop(); // menghilangkan 1 element dalam Queue
cout << "Jumlah elemen sisa " << myints.size() << '\n';
return 0;
}