Coding for KidsCoding for Kids
Level KreatifTantanganPanduan Guru
Voting untuk fitur
Kursus Pengembangan Python Lanjutan
Bab
>
Tingkat

Kelas Lanjutan
Overloading Perbandingan

Tujuan

Periksa dan beri label pengiriman dengan benar menggunakan Perbandingan Overloading.

Dok pengiriman memiliki beberapa tong anggur yang siap untuk dibawa ke toko, namun harus diberi label dan dipersiapkan sehingga para pekerja dapat mengambil dan mengirimnya tanpa masalah. Untuk melakukan ini, kamu harus menggunakan Perbandingan Overloading, mirip dengan Operator Overloading yang dipelajari di bab sebelumnya, kamu harus melakukan overloading pada sebuah kelas, kali ini dengan operator perbandingan.

Ada tiga (3) pesanan di dok, masing-masing dengan dua (2) tong. Setiap pesanan memiliki tanda yang digunakan untuk menunjukkan rasio berat tong dalam pesanan tersebut. Ada sebuah kelas yang dijelaskan di editor bernama barrel yang memungkinkan kamu menggunakan Perbandingan Overloading. Ada juga tiga (3) fungsi yang telah disiapkan di editor: less_than(), greater_than(), equal_to(), fungsi-fungsi ini digunakan untuk mencatat rasio berat pada tanda-tanda tersebut.

Mulailah dengan berjalan ke tanda X gelap dan terang di karpet merah dan hadapi tong-tong tersebut, gunakan fungsi read() untuk menentukan nama anggur dalam tong serta berat tong, seperti ini: await player.read(). Buat objek untuk tong gelap dan terang, menggunakan kelas barrel, dan tambahkan informasi yang kamu identifikasi dari fungsi read(). Setelah objek-objek tersebut dibuat, buat objek lain yang membandingkan kedua objek tersebut. Sebagai contoh:

red_barrel_dark = barrel("Wine name", 000) red_barrel_light = barrel("Wine name", 000) red_barrel_compare = red_barrel_dark < red_barrel_light

Pastikan untuk menuliskan nama anggur dalam objek kelas barrel persis seperti yang ditampilkan dalam pesan ketika kamu menggunakan read().

Buat objek-objek tersebut menggunakan konvensi penamaan sesuai dengan karpet dan tanda X warna. Untuk karpet merah, saat membandingkan tong, gunakan operator < untuk memeriksa apakah tong gelap memiliki berat yang lebih ringan daripada tong terang. Untuk menyelesaikan segmen ini, berjalanlah ke tanda X emas di atas karpet merah dan hadapi tanda tersebut. Gunakan fungsi less_than() dengan objek perbandingan untuk mencatat rasio berat tong, seperti ini: less_than(red_barrel_compare).

Selanjutnya, berjalanlah ke tanda X gelap dan terang di atas karpet hijau dan ulangi proses yang sama. Gunakan fungsi read() pada tanda X gelap dan terang dan buat objek yang sesuai dengan informasi tersebut. Untuk objek perbandingan karpet hijau, kali ini kita akan menggunakan operator > untuk memeriksa apakah tong gelap memiliki berat yang lebih besar daripada tong terang. Berjalanlah ke tanda X emas di atas karpet hijau dan hadapi tanda. Gunakan fungsi greater_than() dengan objek perbandingan untuk mencatat rasio berat tong, seperti ini: greater_than(green_barrel_compare).

Berjalanlah ke tanda X gelap dan terang di atas karpet biru dan ulangi proses yang sama. Gunakan fungsi read() pada tanda X gelap dan terang dan buat objek yang sesuai dengan informasi tersebut. Untuk objek perbandingan karpet biru, kali ini kita akan menggunakan operator == untuk memeriksa apakah tong gelap memiliki berat yang sama dengan tong terang. Berjalanlah ke tanda X emas di atas karpet biru dan hadapi tanda. Gunakan fungsi equal_to() dengan objek perbandingan untuk mencatat rasio berat tong, seperti ini: equal_to(blue_barrel_compare).

Setelah semua pesanan telah diberi label, berjalanlah ke tanda X emas di atas karpet oranye di pintu keluar dok. Hadapi tanda dan gunakan fungsi write() untuk mencatat apa yang ada pada setiap pesanan, tuliskan nama masing-masing tong sesuai dengan objek yang telah kamu buat, misalnya untuk tong karpet merah: red_barrel_dark.name , red_barrel_light.name. Lakukan hal ini untuk keenam tong agar level dapat diselesaikan.

Buku Kode