โพ๏ธPraktikum 2
Pengantar
Pada percobaan ini, kita akan membuat program untuk melakukan konversi notasi infix menjadi notasi postfix.
Perhatikan class diagram Postfix berikut sebagai acuan.

Langkah Percobaan
Buatlah proyek dengan nama
Praktikum2. Kemudian buatkla classPostfixsesuai dengan class diagram yang telah dijelaskan sebelumnya.Tambahkan atribut
n,top, danstacksesuai diagram classPostfixtersebut.Tambahkan konstruktor
Postfixseperti potongan kode berikut,
Buat method
push().
Buat method
pop().
Buat method
isOperand()dengan tipe boolean yang digunakan untuk mengecek apakah elemen data berupa operand.
Buat method
isOperator()dengan tipe boolean yang digunakan untuk mengecek apakah elemen data berupa operator.
Buat method
derajat()yang mempunyai nilai kembalian integer untuk menentukan derajat operator.
Buat method konversi untuk melakukan konversi notasi infix menjadi notasi postfix dengan cara mengecek satu persatu elemen data pada String Q sebagai parameter masukan.
Selanjutnya, buat class baru dengan nama
PostfixMaintetap pada proyek Praktikum2. Buat class main, kemudian buat variabelPdanQ. VariabelPdigunakan untuk menyimpan hasil akhir notasi postfix setelah dikonversi, sedangkan variabelQdigunakan untuk menyimpan masukan dari pengguna berupa ekspresi matematika dengan notasi infix. Deklarasikan variabelScannerdengan namasc, kemudian panggil fungsi built-in trim yang digunakan untuk menghapus adanya spasi di depan atau di belakang teks dari teks persamaan yang dimasukkan oleh pengguna.
Penambahan string โ)โ digunakan untuk memastikan semua simbol/karakter yang masih berada di stack setelah semua persamaan terbaca, akan dikeluarkan dan dipindahkan ke postfix.
Buat variabel total untuk menghitung banyaknya karaketer pada variabel Q.
Lakukan instansiasi objek dengan nama post dan nilai parameternya adalah total. Kemudian panggil method konversi untuk melakukan konversi notasi infix Q menjadi notasi postfix P.
Compile dan jalankan class
PostfixMaindan amati hasilnya.

Pertanyaan
Perhatikan class Postfix, jelaskan alur kerja method derajat!
Apa fungsi kode program berikut?
c = Q.charAt(i);Jalankan kembali program tersebut, masukkan ekspresi 3*5^(8-6)%3. Tampilkan hasilnya!
Pada soal nomor 3, mengapa tanda kurung tidak ditampilkan pada hasil konversi? Jelaskan!
Last updated