Langsung ke konten utama

Problem Solving Visualization using Scratch

Problem: Plant Life
The Beaver loves flowers. May be this is the reason why he has invented a simple programming language for visual design based on the idea of plant life.
Each picture starts with a square called a. A visual object can perform three operations: grow(), split() and die().
The following program explains the semantics:
                                                           a.grow(east); a.grow(east) ;

b,c = a.split(); c.grow(north); b.die();
Please note, that only an oblong object may execute the split()-Operation producing two shorter Objects of equal size. A square cannot be split.
Beaver wants to write a program that transforms the left image to the right image. Which could be the first four commands of this program?

Answer:
A. a.grow(east); a.grow(east); b,c = a.split(); b.die();
B. a.grow(north); a.grow(east); a.grow(east); b,c =a.split();
C. a.grow(east); a.grow(east); a.grow (north); a.die();
D. a.grow(east); b,c = a.split(); c.grow(north); c.grow(east);
Solution:
The correct solution is A. This is the complete program: A. a.grow(east); a.grow(east); b,c = a.split(); d,e = c.split(); b.die(); d.die(); e.grow(north);
C does not work because after the fourth command the image is empty. B and D result to rectangles with minimum side lengths of two units. It is impossible to reduce such a shape to a rectangle with a minimum side length of one unit using the split()-Operation. A gardener must grow things carefully!
Click the green flag to start running.
https://scratch.mit.edu/projects/179914352/

Komentar

Postingan populer dari blog ini

Analisis Sistem Informasi PERTAMINA

Analisis PIECES  Mengacu pada sistem yang ada dan selama ini digunakan dalam proses pengendalian kerja yang ada khususnya sistem pengolahan data karyawan pada PT. Pertamina, kemungkinan besar akan terjadi hasil daya yang kurang relecan dan kurang akurat. Untuk menyelesaikan permasalahan  sebagaimana disebutkan sebelumnya, maka disusun analisis yang digunakan sebagai alat ukur untuk menentukan sebuah sistem yaitu dengan menggunakan analisis PIECES ( Performance, Information, Economy, Control, Efficiency, and Service ). Jenis Analisis Permasalahan Performance and Economy Jadwal Pemesanan persediaan dilakukan berdasarkan insting dan pengecekan Tangki oleh pengawas SPBU setiap hari hal ini akan menjadi permasalahan jika pengawas berhalangan hadir atau terlambat melakukan pengecekan. Information Belum adanya sistem monitoring persediaan premium yang dapat mendukung informasi persediaan secara cepat dan akurat. Control and Efficiency Proses penghitung

Sistem Informasi Rental Mobil

1. USE CASE DIAGRAM  Pada gambar di atas yang bertugas menjadi aktor adalah pelanggan dan petugas. pada sistem ini pelanggan tidak masuk pada sistem, pelanggan hanya melakukan pendaftaran secara manual. Petugas lah yang nantinya akan menginputkan data pelanggan pada sistem. Petugas bertugas menginputkan data rental, data penyewaan, termasuk data pelanggan yang mendaftar untuk melakukan penyewaan dan pembayaran. 2. CLASS DIAGRAM 3. SEQUENCE DIAGRAM  - Sequence Diagram Login Petugas   Prosedur pelaksanaanya :  1. petugas memasukan username dan password pada sistem.  2. petugas masuk pada bagian kepegawaian. 3. sistem akan melakukan pengecekan apabila terjadi kesalahan akan muncul peringatan username atau password salah.  4. apabila sudah masuk ke sistem, petugas akan masuk ke manu utama form - Sequence Diagram Pendaftaran Customer  Prosedur pelaksanaannya :  1. pelanggan akan mengisi formulir pendaftaran.  2. data pelanggan berupa fisik, akan di serahkan pada bagian petugas.  3. petugas

Design Pattern: State Pattern

Definisi State Pattern adalah solusi untuk masalah bagaimana membuat perilaku tergantung pada state. Pola state ini tidak menentukan mana transisi state yang akan didefinisikan. Pilihannya adalah duam yakni: "konteks" objek atau setiap state individu berasal. Keuntungannya adalah kemudahan untuk menambah kelas baru yang berasal dari state. Kelemahannya adalah setiap kelas turunan dari state memliki pengetahuan sambungan yang memperkenalkan dependensi antara subclass. Implementasi 1. Buatlah interface dengan nama PlayerState public interface PlayerState { void action(Player p); } 2. Buatlah tiga kelas berbeda dengan state yang berbeda. Pada contoh dibawah ini saya menamai HealthyState, SurvivalState, DeadState. public class HealthyState implements PlayerState { @Override public void action(Player p) { p.attack(); p.fireBumb(); p.fireGunblade(); p.fireLaserPistol(); } } public class Surv