Latihan UTS /Quizz Kompetensi Malam – IX307 Selasa, 28 September 2010
Soal No.1 Array & String (1) Buatlah sebuah kelas diberi nama BilanganRomawi yang berisi sebuah method konversi(String angkaRomawi) yang berfungsi untuk mengkonversi bilangan romawi menjadi angka desimal. Buatlah kelas TestBilanganRomawi yang akan menerima masukan bilangan romawi dari user dan mengkonversi masukan tersebut ke angka desimal.
Soal No.1 Array & String (2) Contoh output dari program: Masukan sebuah bilangan romawi dari I-M: XCIII Hasil Konversi Bilangan Romawi : 93 Jika tidak dapat dikonversikan tampilkan: “ tidak dapat dikonversikan” Catatan bilangan romawi Bilangan Romawi: I = 1, V = 5, X = 10, L = 50, C = 100, D = 500, M= 1000 IV=4, IX = 9, 40 =XL, 90 = XC, 400 = CD, 900 = CM
Soal No.2 Inheritance-Overiding (1)
Soal No.2 Inheritance-Overiding(2) Buatlah 3 buah kelas seperti class diagram di atas dimana masing-masing kelas memiliki default constructor dan 1 user-defined constructor untuk melakukan setting attributenya. Untuk subclass gunakan keyword super untuk mengisi attribute superclass-nya pada setiap constructor yang dibuat. Kemudian override method eat (makan) dan reproduce (reproduksi) yang berisi menampilkan apa yang mereka makan dan bagaimana mereka bereproduksi
Soal No.2 Inheritance-Overiding(3) Method showInfo, menampilkan semua nilai dari attribute dari masing class-class tersebut. Method calculateCost pada kelas animal menghitung biaya yang diperlukan untuk 1 ekor animal yaitu dengan rumus: numberOfKgFoodNeeded * pricePerKgFood Buatlah kelas TestAnimal yang memiliki []Animal yang member dari arraynya beranggotakan 1 object Chicken dan dan 1 buah object Cow. Untuk masing-masing animal, jalankan method eat, reproduce, calculateCost dan showInfo
Soal No 3. Polymorphism(1) Lanjutkan Soal No.3 dengan membuat satu kelas baru yaitu Farm seperti berikut
Soal No 3. Polymorphism(2) calculateRevenuePerAnimal akan menghitung pendapatan yang diperoleh untuk suatu jenis ternak/animal yaitu dengan menggunakan rumus: 2*CostPerAnimal calculateRevenuePerAnimal akan mengeset nilai dari attribute costPerAnimal dan revenuePerAnimal calculateMinimalNumberOfAnimal akan menghitung minimal Animal yang diperlukan berdasarkan profit yang diharapkan.
Soal No 3. Polymorphism(3) Method calculateMinimalNumberOfAnimal akan mengeset nilai dari attribute minimalNumberOfAnimal. Method showInfo akan menampilkan semua attribute yang telah diset. Buatlah kelas TestFarm untuk menampilkan menjalakan method showInfo setelah melakukan perhitungan cost, revenue, dan minimal jumlah ternak yang diperlukan dengan menerima masukan dari user yaitu: Jenis Animal (pake Option atau huruf tertentu) dan profit yang diharapkan.