نمایش نتایج 1 تا 12 از 12

نام تاپیک: مشکل در پروژه ماشین حساب سی شارپ

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    مشکل در پروژه ماشین حساب سی شارپ

    درود بر دوستان برنامه نویس!
    تازه وارد برنامه نویسی ویژوال سی شارپ شدم (زمینه درباره cpp دارم)
    امودم با یک پروژه ماشین حساب ساده آغاز کنم که یک مشکلی دارم!

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace WindowsFormsApplication12
    {
    public partial class Form1 : Form
    {

    int sum = 0,neg=0;
    int op;
    bool i=true;
    public Form1()
    {
    InitializeComponent();

    }

    private void button1_Click(object sender, EventArgs e)
    {
    tb1.Clear();
    }

    private void plus_Click(object sender, EventArgs e)
    {
    sum += int.Parse(tb1.Text);
    tb1.Clear();
    op = 1;
    }

    private void eq_Click(object sender, EventArgs e)
    {
    int total=0;
    if (op == 1)
    {

    total = sum + int.Parse(tb1.Text);
    op=0;

    }
    if(op == 2){
    total = neg - int.Parse(tb1.Text);

    }
    tb1.Text = Convert.ToString(total);
    total = 0;
    sum = 0;
    neg = 0;
    }

    private void button2_Click(object sender, EventArgs e)
    {
    while(i==true){
    neg += int.Parse(tb1.Text);
    i = false;
    tb1.Clear();
    return;


    }

    neg -= int.Parse(tb1.Text);
    tb1.Clear();
    op = 2;
    }









    }
    }



    بخش جمع چند تا عدد رو درست کردم و به خوبی کار میکنه ولی با شیوه ای مشابه بخش تفریق رو به مشکل خوردم!
    شیوه کاری همانگونه که از کد مشخص هست اینه کاربر با وارد کردن نخستین عدد کلید منفی رو میزنه بعد نخستین عدد ورودی در متغیری بنام neg اضافه میشه ولی اعداد بعدی که با فشردن دکمه تفریق گرفته میشن از اون عدد اولیه کم میشن.
    اشکال کار رو نمیدونم کجاس بخش های مختلفشو دیباگ کردم ولی حاصل تفریقی که نشون میده درست نیست!
    بامهر

  2. #2

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    درود
    اگر برنامه شما درست کار می کرد اشکال داشت. شما متغییری را وارد کرده و بدون اینکه ذخیره کنید اعمال می کنید!

  3. #3

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    نقل قول نوشته شده توسط ScienceLover مشاهده تاپیک
    درود
    اگر برنامه شما درست کار می کرد اشکال داشت. شما متغییری را وارد کرده و بدون اینکه ذخیره کنید اعمال می کنید!
    سپاس از پاسخ شما!
    میشه خطی که چنین کاری انجام شده رو بگید که متوجه منظور شما بشم؟
    شما متوجه مشکل من شدید؟
    بامهر

  4. #4

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    درود
    شما در جای نامناسب و بدون دلیل محتوای tb1 رو Clear می کنید. در سه جای برنامه!

  5. #5

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    چرا بدون دلیل

    private void button1_Click(object sender, EventArgs e)
    {
    tb1.Clear();
    }



    اینجا که به دلیل فشرده شدن دکمه Reset محتوا رو clear کردم.

    private void plus_Click(object sender, EventArgs e)
    {
    sum += int.Parse(tb1.Text);
    tb1.Clear();
    op = 1;
    }



    اینجا هم که پس افزودن مقدار به متغیر sum تکست باکس رو clear کردم.

    private void button2_Click(object sender, EventArgs e)
    {
    while(i==true){
    neg += int.Parse(tb1.Text);
    i = false;
    tb1.Clear();
    return;


    }



    اینجا هم تنها برای نخستین بار پس از اینکه مقدار تکست باکس رو به متغیر neg افزودم clear انجام شده


    }

    neg -= int.Parse(tb1.Text);
    tb1.Clear();
    op = 2;
    }



    اینجا هم که برای دفعات بعدی که عدد وارد شده و بعد دکمه تفریق خورده پس از کم کردن عدد باکس رو clear کردم!
    چرا پس بی دلیل؟

  6. #6

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    درود اگر شما در tb1 مقداری باقی نگذارید چیزی وجود ندارد که جمع یا تفریق شود بنابراین یا برنامه متوقف می شود یا مقدار صفر باقی می کذارد. قسمت اول اشکالی ندارد. شما باید به tb1 مقدار دهید و مقدار داشته باشد در غیر اینصورت برنامه یا متوقف می شود یا حاصل تبدیل 0 است و در کل غلط. اگر شما یک مرحله را درست انجام ندهید به مشکل بر می خورید. شما مقدار می دهید و در آخر هم..... برنامه شما در هر بار فشار دادن کلید ها (هر سه) درtb1 باید مقداری وجود داشته باشد. اگر منطق برنامه شما درست باشد و این را هم انجام بدهید آن وقت برنامه شما درست کار خواهد کرد. علاوه بر این مشکل دیگر در متغییر op است. op در انتهای برنامه 2 می شود و فرصتی برای اعمال عمل تفریق باقی نمی ماند(eq)

  7. #7
    کاربر دائمی
    تاریخ عضویت
    مهر 1393
    محل زندگی
    پایتخت کشتی
    پست
    142

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    رویداد تفریق رو به صورت زیر تغییر بدید
     if (neg == 0)
    neg = int.Parse(tb1.Text);
    else
    neg -= int.Parse(tb1.Text);
    tb1.Clear();
    op = 2;

  8. #8

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    نقل قول نوشته شده توسط ronix3 مشاهده تاپیک
    رویداد تفریق رو به صورت زیر تغییر بدید
     if (neg == 0)
    neg = int.Parse(tb1.Text);
    else
    neg -= int.Parse(tb1.Text);
    tb1.Clear();
    op = 2;
    سپاس فراوان درست شد!
    میشه بگین کارم کجاش اشکال داشت؟
    بامهر

  9. #9
    کاربر دائمی آواتار hadi vafaii
    تاریخ عضویت
    دی 1392
    محل زندگی
    کرج
    پست
    316

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    سلام یه ماشین حساب ساختم امیدوارم به دردت بخوره سورسش رو میتونی از اینجا دانلود کنی

    دانلود

  10. #10

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    سلام این ماشین حساب رو نوشتم فکر کنم بدردتون بخوره

    https://barnamenevis.org/showthread.p...=1#post2343778

  11. #11

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    ماشین حساب ندید، ماشین حساب نوشتن رو یاد بدید
    بامهر

  12. #12

    نقل قول: مشکل در پروژه ماشین حساب سی شارپ

    نقل قول نوشته شده توسط sitetheme مشاهده تاپیک
    ماشین حساب ندید، ماشین حساب نوشتن رو یاد بدید
    بامهر
    دوست عزیز من ماشین حساب ندادم! من سورس ماشین حساب بهتون دادم که یکم اگه علاقه داشته باشین کدشو نگاه کنید و حتما متوجه می شید، راستی اینم بهتون بگم که توی کد بالا که نوشتین خیلی بد کد نویسی کردین اصلا معلوم نیست کی به کیه!! خیلی ساده ترم میتونی کار کنی مثلا برای عملگر ها از متغیر رشته یا کاراکتر استفاده کن مثل : "+" یا "/" اینطوری بهتره بعد اصلا به حلقه احتیاج نیست.

تاپیک های مشابه

  1. مشکل در ساخت ماشین حساب کامل در سی شارپ
    نوشته شده توسط rozitir در بخش C#‎‎
    پاسخ: 4
    آخرین پست: شنبه 30 خرداد 1394, 16:12 عصر
  2. مشکل در ارسال اطلاعات از سی شارپ به stimul
    نوشته شده توسط crazy_1892 در بخش ابزارهای گزارش سازی
    پاسخ: 3
    آخرین پست: دوشنبه 30 خرداد 1390, 15:55 عصر
  3. پاسخ: 1
    آخرین پست: چهارشنبه 20 بهمن 1389, 16:32 عصر
  4. مشکل در کد ماشین حساب
    نوشته شده توسط mani_irani_68 در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 2
    آخرین پست: دوشنبه 29 آذر 1389, 15:38 عصر
  5. مشکل در ارسال ایمیل با سی شارپ
    نوشته شده توسط hassan_h در بخش C#‎‎
    پاسخ: 5
    آخرین پست: پنج شنبه 27 تیر 1387, 02:03 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •