myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   Anfänger Problem mit c# (konsole) (https://mygully.com/showthread.php?t=2900371)

Jietzo 14.04.13 19:08

Anfänger Problem mit c# (konsole)
 
Hey!

Ich will ein Programm machen, was dir sagt ob die Zahl größer oder kleiner ist!

Am anfang war es noch mit ein und ausgabe von texten und zahlen, also ist das jetzt auch dabei, aber einfach ignorieren

Also der Fehler besteht darin dass das Programm egal welche zahl man eingibt - immer sagt er es sei über 20 <.<

Code:

using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace if und else test
{
    class Program
    {
        static void Main(string[] args)
        {
            string eingabe;
            double zahl;
            Console.WriteLine("Identifizierung. . .");
            Console.Write("Bitte geben sie einen Text ein ");
            eingabe = Console.ReadLine();
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine(eingabe);
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("Bitte geben sie eine Zahl ein: ");
            zahl = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine(zahl);
            if (zahl <- 10)
            {
                Console.WriteLine("Die zahl ist kleiner als 10!");
            }
            else
            {
                if (zahl < -20)
                {
                    Console.WriteLine("Die Zahl ist kleiner als 20, donnoch größer als 10");
                }
                else
                {
                    Console.WriteLine("Die Zahl ist größer als 20");
                }
                Console.ReadLine();
            }
        }
    }
}

Da!
Wo ist der fehler?
Das einzige was es sagt ist "Die Zahl ist größer als 20" Auch wenn ich zb. 5 eintippe ..
Also halt immer das was ich bei dem letzden Console.WriteLine eingebe, woran liegt das?

Bitte um schnelle hilfe!
Danke!

NetWebs 14.04.13 19:11

Benutz den Debugger... Und was ist das bitte für ein Namespace?

Jietzo 14.04.13 19:17

hab ich schon benutzt bringt mich aber nicht weiter / hilft mir nicht.

der Namespace ist halt, das ist kein Programm was man brauch <.<
Es ist einfach zur Übung und deswegen heisst es halt if und else test

Jietzo 14.04.13 19:55

Keiner ne lösung? <.<

kkhamburg 14.04.13 21:17

verschoben

dustail 14.04.13 22:48

Hast du schon mal versucht deine Minus-Zeichen (bzw. die Bindestriche) bei deinen if-Abfragen zu entfernen?
Code:

if(zahl < 10)
statt
Code:

if(zahl < -10)
Anscheinend werden diese als Vorzeichen interpretiert.


Zitat:

Zitat von KanuKkidz (Beitrag 24485151)
Benutz den Debugger RICHTIG!

Wenn man keine Ahnung hat, einfach mal....

Sein Fehler ist ein logisches Problem und kein technisches, er hat weder Syntaxfehler, noch versucht er auf nicht initialisierte Objekte zuzugreifen, etc...
Der Debugger wird da nicht meckern...

ProgMaster 15.04.13 07:19

Zitat:

Zitat von dustail (Beitrag 24485267)
Wenn man keine Ahnung hat, einfach mal....

Warum sagst du dann etwas?

Der Debugger ist genau dafür ideal geeignet.
Die Werte, Operationen, etc. kann man während es läuft ändern und prüfen!
Damit wäre dieser Fehler sofort aufgefallen...

Jietzo 15.04.13 16:06

Ah es funktioniert!

Allerdings nicht ganz richtig ^^

Denn wenn ich die <- durch < erstze
Wird die Console 1sek. nach der Antwort beendet ?

Aber ich habe doch Console.Readline();

Oder muss ich noch was anders dort hinschreiben damit sie offen bleibt?

Und kann mir einer das mit dem debugger erklären?
Ich wende ihn ja anscheind nicht richtig an.

#allerdings passiert dies nur wenn ich die zahl unter 10 nehme, dann kommt die aussage "Die zahl ist kleiner als 10!" was ja korrekt ist, schließt sich allerdings dreckt danach.

dustail 15.04.13 16:22

Schreibe dein Console.ReadLine() Methode außerhalb deiner if-Abfragen.

Jietzo 15.04.13 16:28

Klappt danke!

Thread ist gelöst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:19 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.