none
5+6*2 şeklinde yazılan sayıları hesaplama RRS feed

  • Soru

  • Merhaba. Her kese iyi çalışmalar. Hesap makinesi yapmaya çalışıyorum. 5+6*2 =17 işlemini nasıl yapacağımı bilmiyorum. Yardımcı olursanız sevinirim.
    30 Ekim 2019 Çarşamba 15:02

Tüm Yanıtlar

  • Konu Internet of Things ile ilgili imiş ya hadi hayirlisi:

    Console.WriteLine($"5+6*2 = {5 + 6 * 2}");



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.

    • Yanıt Olarak İşaretleyen Rauf_55 30 Ekim 2019 Çarşamba 15:55
    • Yanıt İşaretini Geri Alan Rauf_55 30 Ekim 2019 Çarşamba 15:55
    30 Ekim 2019 Çarşamba 15:16
  • Konu Internet of Things ile ilgili imiş ya hadi hayirlisi:

    Console.WriteLine($"5+6*2 = {5 + 6 * 2}");



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.

    Windows formda yapıyorum. sayılar label'e yazılacak.
    30 Ekim 2019 Çarşamba 15:56
  • Yapamadiginiz kısmı neydi ki? Cevap yukarıda zaten.

    labelCevap.Text = $"5+6*2 = {5 + 6 * 2}";



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.

    30 Ekim 2019 Çarşamba 16:16
  • Yapamadiginiz kısmı neydi ki? Cevap yukarıda zaten.

    labelCevap.Text = $"5+6*2 = {5 + 6 * 2}";



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.

    Sanırım anlatamamışım. 

    Şimdi iki tane label (birine sayılar ve operatörler girilecek, diğerinde ise cevap gösterilecek), 10 tane rakamlar için buton (0-9 şeklinde) 4 tane operatörler için buton ve bir de eşittir işin buton var.

    Kodlarım şöyle:

    Rakamların klik eventine

    Button btn=(Button)sender;

    label1.Text+=btn.Text;

    Operat[rlerin klik eventine

    Button btn=(Button)sender;

    label1.Text+=btn.Text;

    private double hesap(string text)

    {

    string[] sayı = new string[2];
                double cv = 0;
                char[] ob = text.ToCharArray();
                bool a = false;
                string oprtr = "";

                for (int i = 0; i < ob.Length; i++)
                {
                    switch (ob[i].ToString())
                    {
                        case "+":
                            oprtr = "+";
                            a = true;
                            break;
                        case "-":
                            oprtr = "-";
                            a = true;
                            break;
                        case "*":
                            oprtr = "*";
                            a = true;
                            break;
                        case "/":
                            oprtr = "/";
                            a = true;
                            break;
                        default:
                            if (a == false)
                            {
                                eded[0] += ob[i].ToString();
                            }
                            else
                            {
                                eded[1] += ob[i].ToString();
                            }
                            break;
                    }                
                }
                switch (oprtr)
                {
                    case "+":
                        cv = topla(double.Parse(eded[0]), double.Parse(eded[1]));
                        break;
                    case "*":
                        cv = vurma(double.Parse(eded[0]), double.Parse(eded[1]));
                        break;
                    case "-":
                        cv = cixma(double.Parse(eded[0]), double.Parse(eded[1]));
                        break;
                    case "/":
                        cv = bolme(double.Parse(eded[0]), double.Parse(eded[1]));
                        break;
                    default:
                        break;
                }
                return cv;

    }

    şeklinde yazdım.

    Böyle yapınca iki sayı için işlem yapa biliyorum

    İstediğim 5+6*2 şeklinde işlemleri yapmak (Bu sayılar çok ta ola bilir mesela 6+2+4*2*8/2 şeklinde)


    30 Ekim 2019 Çarşamba 16:34
  • Microsoft.CodeAnalysis.CSharp.Scripting  NuGet paketini indirin.

    var sonuc = CSharpScript.EvaluateAsync("5+6*2").Result;
    


    www.cihanyakar.com

    • Yanıt Olarak Öneren CetinBasoz 30 Ekim 2019 Çarşamba 17:13
    30 Ekim 2019 Çarşamba 16:49
  • Microsoft.CodeAnalysis.CSharp.Scripting  NuGet paketini indirin.

    var sonuc = CSharpScript.EvaluateAsync("5+6*2").Result;


    www.cihanyakar.com

    İstediğim şu değil
    30 Ekim 2019 Çarşamba 16:58
  • Microsoft.CodeAnalysis.CSharp.Scripting  NuGet paketini indirin.

    var sonuc = CSharpScript.EvaluateAsync("5+6*2").Result;


    www.cihanyakar.com

    Armutu pişirmemişsin, daha dogrusu pişmiş ama düşmüyor :)


    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    • Düzenleyen CetinBasoz 30 Ekim 2019 Çarşamba 17:17
    30 Ekim 2019 Çarşamba 17:15
  • Microsoft.CodeAnalysis.CSharp.Scripting  NuGet paketini indirin.

    var sonuc = CSharpScript.EvaluateAsync("5+6*2").Result;


    www.cihanyakar.com

    İstediğim şu değil
    Uymayan kısım nedir? 50 kere okudum başka bir şey anlamıyorum.

    www.cihanyakar.com

    30 Ekim 2019 Çarşamba 19:56
  • Selamlar,

    her programcının ilk ödevlerinden olan hesap makinesi uygulaması üzerinde çalışmanı tavsiye ederim.

    iyi forumlar.

    6 Kasım 2019 Çarşamba 19:01
  • Selamlar,

    her programcının ilk ödevlerinden olan hesap makinesi uygulaması üzerinde çalışmanı tavsiye ederim.

    iyi forumlar.

    Sorunun ilgisi yok. Hızlı hızlı cevap yazarken soruyu ve yanıtları okumuyorsunuz.

    www.cihanyakar.com


    • Düzenleyen Cihan Yakar 6 Kasım 2019 Çarşamba 20:19
    6 Kasım 2019 Çarşamba 20:18