طراحی یک فرم ساده (ماشین حساب) در سی شارپ
زمان کنونی: 1397-05-30, 03:16 ق.ظ
خوش آمدید، مهمان! (ورودثبت نام)
http://uploader.bushehrteam.com/do.php?imgf=137519987016081.jpg آموزش کوتاه روز : آیا می دانستید در محیط کد نویسی سی شارپ با دستور ";(System.Diagnostics.Process.Start("calc"" می توانید برنامه ماشین حساب ویندوز را اجرا کنید.
 ( آموزشهای کوتاه خود را در هر زمینه ای و در هر سطحی از طریق این لینک برای ما  بفرستید تا با نام خودتان روزانه در این قسمت قرار بگیرد)
قابل توجه اعضا و بازدیدکنندگان محترم سایت : دامنه کوتاه BUTM.IR در کنار دامنه اصلی ( BushehrTeam.Com ) به وب سایت متصل هست و می توانید به جای استفاده از دامنه BushehrTeam.Com  از دامنه BUTM.IR برای بازدید از سایت استفاده نمایید . . .

ارسال پاسخ 
 
امتیاز موضوع:
  • 2 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
اشتراک موضوع در Digg delsios Reddit Facebook Twitter StumbleUpon
طراحی یک فرم ساده (ماشین حساب) در سی شارپ
نویسنده پیام
********
مدیر ارشد
مدیر ارشد سایت
وضعيت : آفلاین
ارسال ها:304
تاریخ ثبت نام:خرداد 1392
اعتبار: 10
سن: 25
ساکن: بوشهر
حالت من: شاد
سپاس ها: 1004
سپاس شده 1364 بار در 313 ارسال

ارسال: #1
طراحی یک فرم ساده (ماشین حساب) در سی شارپ
طراحی یک ماشین حساب ابتدایی و ساده
در این پست طراحی یک فرم بسیار ساده و ابتدایی ( ماشین حساب) رو شروع می کنیم ، باتوجه به اینکه تصمیم گرفته شده که آموزشها از صفر شروع بشه ، ما هم آموزش و توضحیات رو از موارد بسیار ابتدایی شروع می کنیم ، و به مرور زمان سطح آموزش رو بالا می بریم تا کسانی هم که با برنامه نویسی آشنا نیستند ، بتونن استفاده کنند.

یک پروژه ایجاد و یک فرم به آن اضافه می کنیم ، و شورع می کنیم مثل تصویر زیر فرم رو طراحی میکنیم.

[تصویر: do.php?imgf=137301136485182.jpg]
در طراحی این فرم اگر سئوالی داشتید در تاپیک سئوالات ، بپرسید تا در کوتاهترین زمان ممکن پاسختون رو دریافت کنید.بعد از اینکه فرم رو طراحی کردید ، رویداد کلیک اعداد 0 تا 9 را باز کنید و کد زیر رو برای هر رویداد این دکمه ها ، کد زیر رو بنویسید. فقط به جای Textbox2 ، اسم دقیق کنترل textbox خودتون رو بنویسید ، و همینطور به جای عدد 0 عدد مربوط به اون کنترل رو بنویسید ، مثلا اگر در رویداد کلیک دکمه 5 دارید این کد رو می نویسید باید به جای عدد صفر ، عدد 5 رو بنویسید.

کد:
textBox2.Text += "0";


توضیح کد: کد بالا ، رشته "0" را به محتویات تکست باکس اضافه می کند.
نکته1: خاصیت Text هر کنترل Textbox فقط مقدار رشته ای(String) را می تواند دریافت کند.
نکته2 : همیشه مقادیر رشته ای را در بین دو علامت " " قرار بدهید.
نکته3: در پایان هر دستور ، علامت ; باید نوشته شود ، تا سی شارپ این دستور رو با دستور بعدی جدا کند.
تا اینجای کار(تصویر زیر):

[تصویر: do.php?imgf=137301136462651.jpg]


قبل از اینکه کد مربوط به عملگرها را بنویسیم ، باید 3 متغیر عمومی از نوع Int و یک متغیر از نوع رشته ای را در برنامه تعریف کنیم:

کد:
int firstnumber;   //برای ذخیره عدد اول
int secondnumber;  //برای ذخیره عدد دوم
int result;        //برای ذخیره عدد نتیجه
string operand;    //برای ذخیره نوع عملیات


نکته4: برای نوشتن توضیحات از دو علامت // باید در ابتدای سطر نوشته ، و در ادامه می توانید توضیحات برنامه را بنویسید ، توضیحات می تونه فارسی یا انگلیسی باشه ، و هیچ تاثیری در برنامه نویسی ندارد ، تنها می تونه راهنمای شما باشه.
حالا باید دستورات مربوط به رویداد کلیک دکمه ها رو بنویسیم، ابتدا برای دکمه Clear) C) که تکست باکس را خالی می کند ، همچنین کلیه متغیرها را صفر می کند .کد زیر:


کد:
firstnumber = 0;
secondnumber = 0;
result = 0;
operand = "";
textBox2.Text = "";


خوب حالا باید برای عملگرها ، کد نویسی بشه ، ابتدا برای عملگر جمع کد زیر رو می نویسیم: (کد زیر رو در رویداد کلیک دکمه جمع بنویسید)

کد:
 firstnumber += Convert.ToInt32(textBox2.Text);
operand = "+";
textBox2.Text = "";


توضیح کد:
خط اول عددی که در تکست باکس نوشته شده را به نوع عددی (Integer) تبدیل می کند و در متغیر Firstnumber ذخیره می کند.
خط دوم: در متغیر operand مقدار رشته ای "+" ذخیره می شود ، تا بعدا زمانی که روی دکمه مساوی کلیک شد ، تصمیم گرفته بشه که بر روی اعداد نوشته شده چه عملیاتی باید صورت گیرد.
خط سوم: تکست باکس برای نوشتن عدد دوم خالی می کند.

خوب برای دکمه منها و ضرب و تقسیم هم باید دقیقا همین کد نوشته شود ، با این تفاوت که به جای رشته "+" باید علامت منها ( برای دکمه منها) و یا علامت ضرب("*") برای دکمه ضرب و یا علامت تقسیم ("/") برای دکمه تقسیم نوشته شود.
تنها و اخرین دکمه ای که باقی میمونه ، دکمه مساوی هست ، زمانی که روی دکمه مساوی کلیک شد ، باید با استفاده از دستورراتSelect Case) Switchسابق) تعیین شود که چه عملیاتی باید بر روی اعداد اول و دوم که در متغیرها ذخیره شده اند صورت گیرد.( اگر با نحوه استفاده از Swtich آشنا نیستید بگید تا براتون بزارم)
کد مربوط به رویداد کلیک دکمه مساوی :


کد:
secondnumber = Convert.ToInt32(textBox2.Text);
            switch(operand){
                case "+":
                    result = firstnumber + secondnumber;
                    break;
                case "-":
                    result = firstnumber - secondnumber;
                    break;
                case "*":
                    result = firstnumber * secondnumber;
                    break;
                case "/":
                    result = firstnumber / secondnumber;
                    break;
            }
textBox2.Text = result.ToString();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16


توضیحات کد :
خط اول: عددی که در تکست باکس نوشته شده را در متغیر مربوط به عدد دوم (Secondnumber) ذخیره می کند.
در ادامه دستورات switch هست که اگه خواستید در تاپیک سئوالات بگید تا توضیحاتش رو براتون کامل و با جزئیات بگم.
خط آخر هم که نتیجه عملیات را که در متغیر Result ذخیره شده ، به نوع رشته ای تبدیل می کند و در تکست باکس نمایش می دهد.
حالا برنامه را اجرا کنید و ماشین حسابتون رو تست کنید .اگر سئوالی بوددر همین تاپیک ب
پرسید ، در کوتاهترین زمان پاسخ داده میشه.
همچنین منتظر نظرتون در مورد نحوه آموزش هستیم.
----------------------------------
در پست بعدی کمی امکانات این ماشین حساب را ببیشتر می کنیم .
















پیروزی آن نیست که هرگز زمین نخوری، آنست که بعد از هر زمین خوردنی برخیزی.(مهاتما گاندی)
انجمن تخصصی برنامه نویسی و نرم افزار بوشهرتــیــــــــم
(آخرین ویرایش در 1393-01-14 04:48 ب.ظ توسط: Reza.Heydari. دلیل ویرایش : )
1392-04-14 12:41 ب.ظ
مشاهده سایت این کاربر یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط Arash2012 ، omrani.meysam63 ، ssarina ، sentak ، ETSCOM.blogfa.com ، rana.m ، sajad safaie ، فرزانه ، EaSTeRn ، nahid ، bahman2 ، noyasystem
********
مدیر ارشد
مدیر ارشد سایت
وضعيت : آفلاین
ارسال ها:304
تاریخ ثبت نام:خرداد 1392
اعتبار: 10
سن: 25
ساکن: بوشهر
حالت من: شاد
سپاس ها: 1004
سپاس شده 1364 بار در 313 ارسال

ارسال: #2
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
سلام
تو این پست ، ماشین حسابی که در پست قبل توضیح داده شد رو کمی کاملتر می کنیم .

فرم ماشین حساب رو به صورت زیر تغییر و طبق تصویر تعدادی دکمه به اون اضافه کنید.
[تصویر: do.php?imgf=137328566404341.jpg]

همونطور که می بینید 5 دکمه با نامهای MR,MS,MC,M+,M- به ماشین حساب اضافه شده که خودتون بهتر میدونید کارشون چیه ، اما برای کسانی که آشنا نیستند باید بگم که این دکمه برای ذخیره و استفاده موقت از عددی هست که در تکست باکس نوشته شده .
یک متغیر جدید هم با نام memory برای ذخیره عدد نوشته شده در تکست باکس ایجاد می کنیم ( جهت استفاده از دکمه های مموری)
و چون در این ماشین حساب ممکن هست اعداد اعشاری هم مورد استفاده قرار بگیره ، باید متغیرهایی را هم که در پست قبلی گفته شد ، به نوع داده ای Double تغیر نوع داده بشه. پس طبق کد زیر متغیرهایی رو که در پست قبل گفته شد رو تغییر میدیم و یک متغیر جدید هم اضافه می کنیم.
کد:


کد:
double firstnumber; //برای ذخیره عدد اول
double secondnumber; //برای ذخیره عدد دوم
double result; //برای ذخیره عدد نتیجه
string operand; //برای ذخیره نوع عملیات
double memory; //برای ذخیره عدد جاری در حافظه


نوشتن فقط اعداد در تکست باکس
قابلیت بعدی این هست که کاربر نباید بتونه جز اعداد ریاضی ، حروف الفبا یا نشانه های دیگه رو توی ماشنی حساب بنویسه، برای این کار باید کد زیر رو در رویداد KeyPress مربوط به تکست باکس نوشته بشه.


کد:

کد:
private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
{
if (Char.IsDigit(e.KeyChar) || e.KeyChar == (char)Keys.Back) e.Handled = false;
else { e.Handled = true; Console.Beep(400, 250); }
}

توضیح کد:
معنی این کد به این صورت هست : اگر در تکست باکس اعداد ریاضی نوشته شد ، تکست باکس فعال و به کار خودش ادامه بده ، در غیر اینصورت تکست باکس غیرفعال بشه و چیزی درون اون نوشته نشه و بعد بوق (BEEP) به صدا در بیاد.( اعداد 400 و 250 هم فرکانس و طول بیپ هستند )

خوب کد بقیه دکمه ها و توضیحاتشون رو خلاصه میگم.
دکمه -->
وظیفه این دکمه این هست که آخرین عدد نوشته شده در تکست باکس را حذف کند .
کد مربوط به رویداد کلیک این دکمه

:کد:

کد:
if(textBox2.Text.Length !=0)
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);

توضیح کد: در این کد با تابع Substring رشته موجود در تکست باکس را از کاراکتر با اندیس 0 تا کارکتر یکی مانده به آخر را نگه می داریم و در تکست باکس قرار می دهیم ، بنابراین کارکتر آخر از تکست باکس حذف می شود.
شکل کلی SubString به اینصورت هست
کد:

کد:
"String Data".Substring(Start Index,End Index)

خروجی این کد ، رشته را از اندیس Start Index تا اندیس End Index بر می گرداند.

دکمه بعد ، دکمه رادیکال یا همون جذر هست ، این دکمه ، جذر عدد نوشته شده در تکست باکس را نمایش می دهد. کد مربوط به این دکمه:

کد:

کد:
textBox2.Text = (Math.Sqrt(Convert.ToDouble(textBox2.Text))).ToString();

توضیح کد: سی شارپ توابع ریاضی خودش رو درون کلاسی به نام Math نگهداری می کند ، بنابراین برای اینکه به تابع محاسبه جذر (SQRT) دسترسی داشته باشید ، باید به صورت Math.sqrt و بعد از اون عددی که می خواهید جذر اون گرفته بشه ، رو نوشت.
نکته1: Convert.ToDouble عددی که در تکست باکس نوشته شده را به نوع داده ای اعشاری تبدیل می کند .
اصلاحیه 1: در پست قبل در هر کجای کدتون که نوشته بودید Convert.ToInt32 ، اون رو با این کد Convert.ToDouble جایگزین کنید ، تا بشه از داده های اعشاری هم استفاده کرد.

از اینجا به بعد میرسیم به دکمه های حافظه (MR,MS,MC,....)

دکمه (Memory Save) یا همون MS:
وظیفه این دکمه هم اینه که عدد نوشته شده در تکست باکس را درون حافظه ( متغیر memory) ذخیره کند ،

کد:

کد:
memory = Convert.ToDouble(textBox2.Text);

توضیح: مشخصه دیگه ! مقدار تکست باکس رو به نوع اعشار تبدیل می کنه و توی متغیر memory ذخیره می کنه.

دکمه (Memory Read) یا همون MR
این دکمه عدد موجود در حافظه یا همون memory رو توی تکست باکس نمایش میده،

کد:

کد:
textBox2.Text = memory.ToString();

دکمه (Memory Clear) یا همون MC
این دکمه مموری رو خالی می کنه ، یعنی مقدار متغیر مموری رو برابر با صفر میکنه.
کد:

کد:
memory = 0;

دکمه (Memory Add) یا همون M+
این دکمه عدد موجود در حافظه را با عدد نوشته شده در تکست باکس جمع می کند و در حافظه ذخیره می کند .

کد:

کد:
memory += Convert.ToDouble(textBox2.Text);



دکمه (Memory MINUS) یا همون M-
این دکمه عدد موجود در حافظه را منهای عدد نوشته شده در تکست باکس می کند و در حافظه ذخیره می کند .

کد:

کد:
memory -= Convert.ToDouble(textBox2.Text);



-----------------------------
تا اینجای کار آموزش ها بسیار ابتدایی و ساده بودند .
ولی در پست های بعدی ، کمی وارد مسائل مهمتر میشیم .
موفق باشید.
















پیروزی آن نیست که هرگز زمین نخوری، آنست که بعد از هر زمین خوردنی برخیزی.(مهاتما گاندی)
انجمن تخصصی برنامه نویسی و نرم افزار بوشهرتــیــــــــم
(آخرین ویرایش در 1392-10-28 07:59 ب.ظ توسط: Reza.Heydari. دلیل ویرایش : )
1392-04-17 04:49 ب.ظ
مشاهده سایت این کاربر یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط ETSCOM.blogfa.com ، omrani.meysam63 ، sajad safaie ، nahid ، فرزانه ، EaSTeRn
**
کاربر سایت


کاربر سایت
وضعيت : آفلاین
ارسال ها:1
تاریخ ثبت نام:دى 1392
اعتبار: 0
سن:
ساکن:
حالت من:
سپاس ها: 0
سپاس شده 6 بار در 1 ارسال

ارسال: #3
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
سلام من تازه با سایتون آشنا شدم خیلی مطالب مفیدی دارید
خدا پشت و پناهتان باشد
1392-10-03 12:32 ق.ظ
یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط omrani.meysam63 ، Reza.Heydari ، ghasem110 ، sajad safaie ، nahid ، EaSTeRn
**
کاربر سایت


کاربر سایت
وضعيت : آفلاین
ارسال ها:24
تاریخ ثبت نام:اسفند 1392
اعتبار: 0
سن:
ساکن:
حالت من:
سپاس ها: 22
سپاس شده 85 بار در 24 ارسال

ارسال: #4
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
سلام ... آقا خیلی ممنون ؛
با این توضیح واو به واو از کتاب راحت تر یاد گرفتم و کار این چند تا تابع رو هم فهمیدم !
الان اگه بخوان توان رو استفاده کنم باید چی کار کنم ؟
1392-12-28 06:15 ب.ظ
یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط nahid ، sajad safaie ، omrani.meysam63 ، EaSTeRn
********
مدیر ارشد
مدیر ارشد سایت
وضعيت : آفلاین
ارسال ها:304
تاریخ ثبت نام:خرداد 1392
اعتبار: 10
سن: 25
ساکن: بوشهر
حالت من: شاد
سپاس ها: 1004
سپاس شده 1364 بار در 313 ارسال

ارسال: #5
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
(1392-12-28 06:15 ب.ظ)'ghasem110' نوشته شده توسط:  سلام ... آقا خیلی ممنون ؛
با این توضیح واو به واو از کتاب راحت تر یاد گرفتم و کار این چند تا تابع رو هم فهمیدم !
الان اگه بخوان توان رو استفاده کنم باید چی کار کنم ؟

 
دکمه توان :

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

کد:
firstnumber=Convert.ToInt32(textBox2.Text);
            textBox2.Text="";
            operand = "^";


و بعد کدی که در رویداد کلیک دکمه مساوی نوشته بودیم ( در پست اول) با کدهای زیر جایگزین کنید :

کد:
secondnumber = Convert.ToInt32(textBox2.Text);
            switch (operand) {
                case "+":
                    result = firstnumber + secondnumber;
                    break;
                case "-":
                    result = firstnumber - secondnumber;
                    break;
                case "*":
                    result = firstnumber * secondnumber;
                    break;
                case "/":
                    result = firstnumber / secondnumber;
                    break;
                case "^":
                    result = System.Math.Pow(firstnumber, secondnumber);
                    break;
            }
            textBox2.Text = result.ToString();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19


حالا برنامه را اجرا کنید ،  به عنوان مثال عدد 2 را تایپ کنید و بعد دکمه توان را بزنید و عدد 3 را تایپ کنید ، در پایان اگر دکمه مساوی را بزنید ، عدد 2 به توان 3 را محاسبه و نمایش داده می شود.


همونطور که میبینید در این کد ، فقط خط زیر اضافه شده . این کد  عدد اول را به توان عدد دوم محاسبه می کند.

کد:
System.Math.Pow(firstnumber, secondnumber);



 
















پیروزی آن نیست که هرگز زمین نخوری، آنست که بعد از هر زمین خوردنی برخیزی.(مهاتما گاندی)
انجمن تخصصی برنامه نویسی و نرم افزار بوشهرتــیــــــــم
1392-12-29 09:25 ب.ظ
مشاهده سایت این کاربر یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط nahid ، sajad safaie ، omrani.meysam63 ، فرزانه ، ssarina ، EaSTeRn ، Atiyeh_NI
**
کاربر سایت


کاربر سایت
وضعيت : آفلاین
ارسال ها:24
تاریخ ثبت نام:اسفند 1392
اعتبار: 0
سن:
ساکن:
حالت من:
سپاس ها: 22
سپاس شده 85 بار در 24 ارسال

ارسال: #6
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
خیلی ممنون ...
راستی تو این روش که فقط یه نمایشگر (textbox) داری نمیشه از تابع pow استفاده کرد ؟
یه سوال دیگه : من یه ماشین حساب خودم نوشتم ، توانشو با همون تابع : pow نوشتم ولی اگر جواب بالای 9 رقم بشه ، یه عدد ثابت نشون میده : منفی 21000000
1393-01-04 10:40 ب.ظ
یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط omrani.meysam63 ، sajad safaie ، EaSTeRn
********
مدیر ارشد
مدیر ارشد سایت
وضعيت : آفلاین
ارسال ها:304
تاریخ ثبت نام:خرداد 1392
اعتبار: 10
سن: 25
ساکن: بوشهر
حالت من: شاد
سپاس ها: 1004
سپاس شده 1364 بار در 313 ارسال

ارسال: #7
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
(1393-01-04 10:40 ب.ظ)'ghasem110' نوشته شده توسط:  خیلی ممنون ...
راستی تو این روش که فقط یه نمایشگر (textbox) داری نمیشه از تابع pow استفاده کرد ؟
یه سوال دیگه : من یه ماشین حساب خودم نوشتم ، توانشو با همون تابع : pow نوشتم ولی اگر جواب بالای 9 رقم بشه ، یه عدد ثابت نشون میده : منفی 21000000

 
جواب سوال اولتون ، توی پست قبل توضیح دادم ، فقط کافیه عددی که توی textbox  نوشتین ، به نوع عددی (int  یا double)  تبدیل کنین و بعد با تابع pow  اون رو به توان برسونید.
سوال دومتون هم بستگی داره به روشی که استفاده کردین ، کد برنامه تون رو بزارید باینجا تا جواب دقیقتری بگیرید. ولی در هر صورت تا یه حدی میشه اعداد رو به توان رسوند و عددهای با طول زیاد قابل محاسبه نیست و باید از فرمول های خاص ریاضی برای به توان رسوندن اعداد با طول بالا استفاده کنید.















پیروزی آن نیست که هرگز زمین نخوری، آنست که بعد از هر زمین خوردنی برخیزی.(مهاتما گاندی)
انجمن تخصصی برنامه نویسی و نرم افزار بوشهرتــیــــــــم
1393-01-08 03:19 ب.ظ
مشاهده سایت این کاربر یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط omrani.meysam63 ، nahid ، فرزانه ، EaSTeRn ، sajad safaie
**
کاربر سایت


کاربر سایت
وضعيت : آفلاین
ارسال ها:5
تاریخ ثبت نام:فروردین 1393
اعتبار: 0
سن:
ساکن:
حالت من:
سپاس ها: 8
سپاس شده 14 بار در 5 ارسال

ارسال: #8
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
مرسی از اموزشتون خیلی خوب بود
فقط یه سوال داشتم :
اگه بخوایم چند تا عدد رو هم زمان جمع کنیم باید چی کار کنیم ؟
مثلا : 2+3+5
فقط دو رقم اخر رو جمع میکنه !تصویر: /images/smilies/yahoo/106.gif
1393-01-14 03:13 ب.ظ
یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط sajad safaie ، Reza.Heydari ، omrani.meysam63
********
مدیر ارشد
مدیر ارشد سایت
وضعيت : آفلاین
ارسال ها:304
تاریخ ثبت نام:خرداد 1392
اعتبار: 10
سن: 25
ساکن: بوشهر
حالت من: شاد
سپاس ها: 1004
سپاس شده 1364 بار در 313 ارسال

ارسال: #9
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
(1393-01-14 03:13 ب.ظ)'EaSTeRn' نوشته شده توسط:  مرسی از اموزشتون خیلی خوب بود
فقط یه سوال داشتم :
اگه بخوایم چند تا عدد رو هم زمان جمع کنیم باید چی کار کنیم ؟
مثلا : 2+3+5
فقط دو رقم اخر رو جمع میکنه !تصویر: /images/smilies/yahoo/106.gif

 
کافیه که توی رویداد جمع کد رو به صورت زیر تغییر بدید:

کد:
firstnumber += Convert.ToInt32(textBox2.Text);
            operand = "+";
            textBox2.Text = "";


از این به بعد با هر عمل جمع مقدار قبلی هم با عدد جدید جمع میشه.
عملگر +=  متغیر firstnumber را با مقدار جدید تکست باکس جمع می کند و در خود متعیر firstnumber  ذخیره میکنه.
















پیروزی آن نیست که هرگز زمین نخوری، آنست که بعد از هر زمین خوردنی برخیزی.(مهاتما گاندی)
انجمن تخصصی برنامه نویسی و نرم افزار بوشهرتــیــــــــم
(آخرین ویرایش در 1393-01-14 05:45 ب.ظ توسط: Reza.Heydari. دلیل ویرایش : )
1393-01-14 04:46 ب.ظ
مشاهده سایت این کاربر یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط EaSTeRn ، sajad safaie ، omrani.meysam63
**
کاربر سایت


کاربر سایت
وضعيت : آفلاین
ارسال ها:5
تاریخ ثبت نام:فروردین 1393
اعتبار: 0
سن:
ساکن:
حالت من:
سپاس ها: 8
سپاس شده 14 بار در 5 ارسال

ارسال: #10
RE: طراحی یک فرم ساده (ماشین حساب) در سی شارپ
(1393-01-14 04:46 ب.ظ)'Reza.Heydari' نوشته شده توسط:  
(1393-01-14 03:13 ب.ظ)'EaSTeRn' نوشته شده توسط:  مرسی از اموزشتون خیلی خوب بود
فقط یه سوال داشتم :
اگه بخوایم چند تا عدد رو هم زمان جمع کنیم باید چی کار کنیم ؟
مثلا : 2+3+5
فقط دو رقم اخر رو جمع میکنه !تصویر: /images/smilies/yahoo/106.gif


 
کافیه که توی رویداد جمع کد رو به صورت زیر تغییر بدید:

کد:
firstnumber += Convert.ToInt32(textBox2.Text);
            operand = "+";
            textBox2.Text = "";


از این به بعد با هر عمل جمع مقدار قبلی هم با عدد جدید جمع میشه.
عملگر +=  متغیر firstnumber را با مقدار جدید تکست باکس جمع می کند و در خود متعیر firstnumber  ذخیره میکنه.
برای بقیه عملگرها هم همینکار رو باید انجام داد
کدهای پست اول رو ویرایش میکنم .

 


من اینو نوشتم :

کد:
a += double.Parse(textBox1.Text);
m = "+";
textBox1.Clear();

بعضی از اعداد رو درست جمع میکنه ولی بعضی رو نه 22
مثلا 1+2+3=6 رو میده ولی 7+8+9 رو میده 27 22
چرا ؟22

1393-01-14 05:06 ب.ظ
یافتن همه ی ارسالهای این کاربر نقل قول این ارسال در یک پاسخ
 سپاس شده توسط sajad safaie ، nahid ، omrani.meysam63
ارسال پاسخ 


موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  ارتباط با دیتابیس با استفاده از Linq در سی شارپ Reza.Heydari 27 41,507 1395-12-02 11:07 ق.ظ
آخرین ارسال: mazhar1354
  کار با دیتاگرایدویو ( dataGridView ) در سی شارپ فرزانه 52 79,555 1395-11-10 12:42 ب.ظ
آخرین ارسال: Yalan
  سورس فروشگاه موبایل سی شارپ قاسم موجی 0 1,017 1395-09-29 07:21 ب.ظ
آخرین ارسال: قاسم موجی
  سورس شطرنج دونفره سی شارپ قاسم موجی 0 1,007 1395-09-29 07:10 ب.ظ
آخرین ارسال: قاسم موجی
  آموزش C# | آموزش سی شارپ 8908183 0 1,379 1395-06-06 10:27 ب.ظ
آخرین ارسال: 8908183
  پروژه سی شارپ محمد حسن اکبری 1 2,144 1394-10-23 09:51 ب.ظ
آخرین ارسال: حسین24
  تشخیص چهره در سی شارپ developer 9 10,939 1394-08-16 03:09 ب.ظ
آخرین ارسال: 46795812
  سئوالات خودتون در مورد آموزشهای سی شارپ را اینجا بپرسید Reza.Heydari 25 15,583 1394-08-07 09:32 ق.ظ
آخرین ارسال: آتیش
  کنترل های فرم در سی شارپ Reza.Heydari 1 7,216 1394-05-26 07:40 ب.ظ
آخرین ارسال: m.h.124
  سوال ساده در مورد کلاس seiedjavad 0 1,190 1394-02-23 06:17 ق.ظ
آخرین ارسال: seiedjavad
  تایم پیکر در سی شارپ titipop 0 1,809 1394-02-16 01:02 ب.ظ
آخرین ارسال: titipop
  جستجو براساس تاریخ شمسی در سی شارپ titipop 1 3,924 1394-02-14 01:14 ب.ظ
آخرین ارسال: faceforce
  خواندن از کمبو در سی شارپ titipop 0 1,921 1394-01-12 07:45 ب.ظ
آخرین ارسال: titipop
  انتخاب از کمبو گریدویو در سی شارپ titipop 4 4,021 1394-01-02 01:48 ب.ظ
آخرین ارسال: titipop
  سوال : انتخاب مقدار کمبوباکس در سی شارپ titipop 2 3,559 1393-12-29 04:12 ب.ظ
آخرین ارسال: titipop

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

دوستان ما