Menu
CoddyTech

Ringkasan: Kalkulator Sederhana

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan C# di Coddy. Pelajaran 9 dari 70.

challenge icon

Tantangan

Sulit

Buat class Calculator lengkap dalam namespace CalculatorApp.Core yang menunjukkan semua konsep yang telah dipelajari:

  • Field: Field privat untuk memory (decimal) dan operationCount (int)
  • Property: Property yang diimplementasikan secara otomatis, yaitu Name, serta property hanya-baca Memory dan OperationCount
  • Konstruktor: Konstruktor dengan parameter name, dan konstruktor default yang menggunakan constructor chaining
  • Method: Add, Subtract, Multiply, Divide, Power, dan SquareRoot

Semua method harus menambah nilai operationCount. Method Add juga harus menyimpan hasilnya di memory.

Catatan: Gunakan Math.Pow() untuk Power dan Math.Sqrt() untuk SquareRoot. Ubah parameter ke double jika diperlukan.

Coba sendiri

using System;
using CalculatorApp.Core;

class Program
{
    static void Main()
    {
        string name = Console.ReadLine();
        decimal num1 = decimal.Parse(Console.ReadLine());
        decimal num2 = decimal.Parse(Console.ReadLine());
        
        // Buat kalkulator dengan konstruktor yang menerima nama
        Calculator calc = new Calculator(name);
        
        Console.WriteLine($"Calculator: {calc.Name}");
        Console.WriteLine($"Memory: {calc.Memory}");
        
        // Lakukan operasi
        decimal addResult = calc.Add(num1, num2);
        Console.WriteLine($"Add: {addResult}");
        
        decimal subtractResult = calc.Subtract(num1, num2);
        Console.WriteLine($"Subtract: {subtractResult}");
        
        decimal multiplyResult = calc.Multiply(num1, num2);
        Console.WriteLine($"Multiply: {multiplyResult}");
        
        decimal divideResult = calc.Divide(num1, num2);
        Console.WriteLine($"Divide: {divideResult}");
        
        Console.WriteLine($"Memory after operations: {calc.Memory}");
        
        decimal powerResult = calc.Power(num1, num2);
        Console.WriteLine($"Power: {powerResult}");
        
        decimal sqrtResult = calc.SquareRoot(num2);
        Console.WriteLine($"Square Root: {sqrtResult}");
        
        Console.WriteLine($"History: {calc.OperationCount} operations");
    }
}

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler C# online