Ada pertanyaan di situs yang meminta untuk mengimplementasikan divisi tanpa menggunakan divisi.
Dalam kasus saya, saya meminta Anda untuk melakukan hal yang sama, tetapi hanya menggunakan tambahan.
Apa artinya ini pada dasarnya: penjumlahan adalah satu-satunya operator atau fungsi yang diizinkan yang beroperasi pada angka dan mengembalikan angka lainnya (yaitu tidak ada pengurangan, perkalian, eksponensial, inversi bitwise, dll.). Hal-hal seperti jika pernyataan, penugasan dan operator perbandingan, dan untuk loop masih diizinkan, asalkan di dalamnya, Anda masih menggunakan tambahan.
Tugas Anda adalah membangun fungsi divide(a, b)yang mengambil dua bilangan bulat positif adan bdan mengembalikan hasil ayang dibagi dengan bdan dibulatkan ke nol, tetapi menggunakan penjumlahan dan tidak ada operator aritmatika lainnya, dan tidak ada data lain yang membangun selain angka.
Kode yang menang akan menjadi salah satu yang membutuhkan operasi tambahan paling sedikit harus dilakukan selama set input mana abervariasi dari 1ke 200dan bbervariasi dari 1ke a.
Untuk melacak hal ini, Anda dapat membuat versi alternatif dari kode Anda yang menggantikan setiap instance a + bdengan add(a, b)dan program adduntuk menambah add_usedvariabel global serta mengembalikan jumlah dari dua angka.