C# Neuanfänger
-
Guten Morgen liebe Community!
Ich hoffe, dass ihr mir als C# Anfängerin helfen könnt. Die letzten Jahre habe ich mit Java programmiert. Nun habe ich eine Aufgabe, die ich mit C# programmieren muss, jedoch weiß ich nicht ob ich den richtigen Ansatz für die Aufgabe habe.
Die Aufgabe:
Der Benutzer soll einen String eingeben und mein Programm überprüft dann, ob dieser String eine gültige reelle Zahl ist oder nicht. Falls ja, dann soll am Bildschirm herausgegeben werden, dass der String eine Zahl ist und wenn nicht, dann wird eben ein Nein herausgegeben.
Das heißt der String kann ein Integer, Double, Float und so weiter sein oder?
Ich hatte den Ansatz, dass ich als
1. Den Benutzer einen String eingeben lasse
2. Diesen String nach und nach in die anderen Datentype umwandle und schaue ob es in einen der Datentypen passt.
(Im Beispiel unten habe ich statt einer Bedingung bei If eine Kommentarzeile geschrieben, da ich mir nicht sicher war, wie ich es in C# ausdrücken würde)D.h.:
class String {
static void Main ();
System.Console.WriteLine("Bitte geben Sie einen String ein");
string abc = System.Console.ReadLine();//String abc zum Beispiel in Double umwandeln
if ( // abc ist ein Double )
{
dann gebe heraus, dass es ein String ist
}
else if
{}
}
...und jetzt merke ich schon, dass ich nicht weit damit kommen werde. Wäre es nur ein Datentyp, d.h. "Überprüfe ob der eingegebene String ein Double ist" würde mir leichter fallen, als die oben genannte Aufgabe. Leider fällt mir keine andere Lösung ein.
Ich würde mich sehr freuen, wenn mir jemand helfen könnte.
-
Hallo,
du hast im falschen Unterforum gepostet - ein Moderator wird diesen Thread dann wohl demnächst verschieben.
Schau dir mal die Double.TryParse-Methode (und dessen Beispiel) an. Auch die anderen Datentypen (Float, Int32, Int64, ...) bieten entsprechende TryParse-Methoden an.
Bedenke aber, daß du nicht zwischen Double und Float direkt unterscheiden kannst (außer der Wertebereich ist größer als Float.MaxValue), sondern daß nur die interne Genauigkeit (Anzahl der relevanten Ziffern) unterschiedlich ist.