مقدمهای بر کد ماشین حساب در سی شارپ
در دنیای برنامهنویسی، ماشین حسابها ابزارهای اساسی و جالبی هستند. این ابزارها به ما اجازه میدهند تا عملیات ریاضی ساده یا پیچیدهای را انجام دهیم. در اینجا، به بررسی نحوه ایجاد یک ماشین حساب ساده با استفاده از زبان برنامهنویسی سی شارپ میپردازیم.
طراحی رابط کاربری
ابتدا باید یک رابط کاربری برای ماشین حساب طراحی کنیم. میتوانیم از Windows Forms یا WPF استفاده کنیم.
- Windows Forms: یکی از سادهترین روشها برای ایجاد رابط کاربری گرافیکی است.
- WPF: ابزاری قدرتمند برای طراحی رابطهای کاربری جذاب و پیچیده است.
برای شروع، یک فرم جدید ایجاد میکنیم و دکمهها و ویجتهای لازم را اضافه میکنیم.
کد ماشین حساب
حالا بیایید به نوشتن کد بپردازیم. در اینجا یک کد نمونه برای یک ماشین حساب ساده آورده شده است:
```csharp
using System;
using System.Windows.Forms;
namespace SimpleCalculator
{
public partial class CalculatorForm : Form
{
private double result = 0;
private string operation = string.Empty;
private bool isOperationPerformed = false;
public CalculatorForm()
{
InitializeComponent();
}
private void Number_Click(object sender, EventArgs e)
{
if ((textBox_Result.Text == "0") || isOperationPerformed)
textBox_Result.Clear();
isOperationPerformed = false;
Button button = (Button)sender;
textBox_Result.Text += button.Text;
}
private void Operation_Click(object sender, EventArgs e)
{
Button button = (Button)sender;
if (result != 0)
{
button_Equal.PerformClick();
operation = button.Text;
labelCurrentOperation.Text = $"{result} {operation}";
isOperationPerformed = true;
}
else
{
operation = button.Text;
result = double.Parse(textBox_Result.Text);
labelCurrentOperation.Text = $"{result} {operation}";
isOperationPerformed = true;
}
}
private void Button_Equal_Click(object sender, EventArgs e)
{
switch (operation)
{
case "+":
textBox_Result.Text = (result + double.Parse(textBox_Result.Text)).ToString();
break;
case "-":
textBox_Result.Text = (result - double.Parse(textBox_Result.Text)).ToString();
break;
case "*":
textBox_Result.Text = (result * double.Parse(textBox_Result.Text)).ToString();
break;
case "/":
textBox_Result.Text = (result / double.Parse(textBox_Result.Text)).ToString();
break;
default:
break;
}
result = double.Parse(textBox_Result.Text);
labelCurrentOperation.Text = string.Empty;
}
private void Button_Clear_Click(object sender, EventArgs e)
{
textBox_Result.Text = "0";
result = 0;
labelCurrentOperation.Text = string.Empty;
}
}
}
```
توضیحات کد
در کد بالا، چندین متد داریم که به عملیات مختلف ماشین حساب مربوط میشوند:
- Number_Click: این متد برای کلیک روی دکمههای عددی استفاده میشود. در اینجا، اگر کاربر یک عدد جدید وارد کند، متن جعبه ورودی پاک میشود.
- Operation_Click: با کلیک بر روی دکمه عملگر (جمع، تفریق، ضرب، تقسیم) این متد اجرا میشود. در اینجا، نتیجه محاسبه و عملگر جاری ذخیره میشود.
- Button_Equal_Click: این متد برای محاسبه نهایی نتیجه بر اساس عملگر انتخاب شده و عدد ورودی استفاده میشود.
- Button_Clear_Click: با کلیک بر روی دکمه پاک کردن، همه مقادیر به حالت اولیه برمیگردند.
نتیجهگیری
ایجاد یک ماشین حساب ساده با سی شارپ نه تنها به ما اجازه میدهد تا با زبان برنامهنویسی آشنا شویم، بلکه مهارتهای طراحی رابط کاربری را نیز تقویت میکند. حالا شما میتوانید کد را اجرا کنید و از ماشین حساب خود لذت ببرید!