回顾:简单计算器
本课属于 Coddy C# 学习旅程的“面向对象编程”单元。第 9 课,共 70 课。
挑战
困难在 CalculatorApp.Core 命名空间中创建一个完整的 Calculator 类,展示你学到的所有概念:
- 字段:为
memory(decimal)和operationCount(int)创建私有字段 - 属性:自动实现属性
Name,以及只读属性Memory和OperationCount - 构造函数:包含名称参数的构造函数,以及使用构造函数链的默认构造函数
- 方法:
Add、Subtract、Multiply、Divide、Power和SquareRoot
所有方法都应递增 operationCount。Add 方法还应将结果存储在 memory 中。
注意:使用 Math.Pow() 计算幂,使用 Math.Sqrt() 计算平方根。需要时将参数转换为 double。
亲手试试
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());
// 使用传入名称的构造函数创建计算器
Calculator calc = new Calculator(name);
Console.WriteLine($"Calculator: {calc.Name}");
Console.WriteLine($"Memory: {calc.Memory}");
// 执行运算
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");
}
}面向对象编程中的所有课
自己练习: C# 在线编译器