Menu
CoddyTech

Ringkasan: Kalkulator Sederhana

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan GDScript di Coddy. Pelajaran 8 dari 65.

challenge icon

Tantangan

Sedang

Tulis class Calculator di calculator.gd. Class ini menyimpan hasil berjalan dalam property float result, yang dimulai dari 0.0.

  • add(number), subtract(number), multiply(number), dan divide(number) menerapkan operasi pada result dengan number, menyimpan hasil baru, lalu mengembalikannya
  • Saat divide() menerima 0, fungsi ini mencetak Error: Division by zero, membiarkan result tetap, lalu mengembalikannya
  • clear() mengatur kembali result ke 0.0, lalu mengembalikannya
  • get_result() mengembalikan result

Kode yang disediakan membaca jumlah perintah berikutnya, lalu membaca satu perintah per baris, seperti add 5, divide 0, atau clear. Setelah setiap perintah, kode mencetak nama perintah dan nilai yang dikembalikan oleh method, lalu mencetak hasil akhir. Untuk add 5, multiply 3, subtract 2, divide 0, dan divide 2, kode mencetak:

add -> 5.0
multiply -> 15.0
subtract -> 13.0
Error: Division by zero
divide -> 13.0
divide -> 6.5
Final result: 6.5

Tulis kodemu di calculator.gd. main.gd berisi kode input/output yang disediakan dan tidak boleh diedit.

Coba sendiri

extends Node

func _ready():
	# Kode input/output yang disediakan: biarkan apa adanya
	var calc := Calculator.new()
	var count := int(OS.read_string_from_stdin())
	for i in count:
		var parts := OS.read_string_from_stdin().split(" ")
		var value := 0.0
		match parts[0]:
			"add":
				value = calc.add(float(parts[1]))
			"subtract":
				value = calc.subtract(float(parts[1]))
			"multiply":
				value = calc.multiply(float(parts[1]))
			"divide":
				value = calc.divide(float(parts[1]))
			"clear":
				value = calc.clear()
		print("%s -> %s" % [parts[0], value])
	print("Final result: %s" % calc.get_result())

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler GDScript online