موضوعات وبسایت : برنامه نویسی
سوالات امتحان آیین نامه رانندگی

جمع اعداد در سی شارپ

جمع اعداد در سی شارپ

نویسنده : علی بجنوردی | زمان انتشار : 17 دی 1400 ساعت 18:43

جهت انجام پروژه های دانشجویی و یا تمرین‌های برنامه نویسی رشته کامپیوتر میتوانید به آی دی تلگرام زیر پیام دهید

@AlirezaSepand



سوالات امتحان آیین نامه رانندگی

جمع اعداد فارسی

همانطور که می دانید در حالت عادی نمی توان مقدار TextBox هایی را که در آنها اعداد با استفاده از کاراکترهای فارسی نوشته می شوند را با هم جمع کرد. برای این کار از متد توسعه یافته زیر استفاده کنید :

public static class PersianDigit
{
    public static string ConvertDigits(this string value)
    {
        StringBuilder StringBuilder1 = new StringBuilder();

        for (int i = 0; i if (char.IsDigit(value[i]))
            {
                StringBuilder1.Append(char.GetNumericValue(value[i]));
            }
            else
            {
                StringBuilder1.Append(value[i]);
            }
        }

        return StringBuilder1.ToString();
    }
}

حال فرض کنید که می خواهید مقدار دو TextBox که دارای اعداد فارسی هستند را با هم جمع کنید:

using System;
using System.Text;
using System.Windows.Forms;

namespace SumPersianDigit
{
    public static class PersianDigit
    {
        public static string ConvertDigits(this string value)
        {
            StringBuilder StringBuilder1 = new StringBuilder();

            for (int i = 0; i if (char.IsDigit(value[i]))
                {
                    StringBuilder1.Append(char.GetNumericValue(value[i]));
                }
                else
                {
                    StringBuilder1.Append(value[i]);
                }
            }

            return StringBuilder1.ToString();
        }
    }

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }       

        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if ((int)e.KeyChar >= 48 && (int)e.KeyChar char)(1632 + int.Parse(e.KeyChar.ToString()));
        
        }

        private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
        {
            if ((int)e.KeyChar >= 48 && (int)e.KeyChar char)(1632 + int.Parse(e.KeyChar.ToString()));        
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int number1 = int.Parse(this.textBox1.Text.ConvertDigits());
            int number2 = int.Parse(this.textBox2.Text.ConvertDigits());
            int result = number1 + number2;
            MessageBox.Show(result.ToString());
        }
    }
}

نتیجه
sum-persian-digit-in-c.jpg

آیا این مطلب برای شما مفید بود؟


منبع: www.w3-farsi.com



ارسال نظر

نام


ایمیل


نظر