1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Problem mit einer float Zahl in Java

    • Frage
  • elChico
  • 7. November 2003 um 12:24
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • elChico
    Punkte
    35
    Beiträge
    4
    • 7. November 2003 um 12:24
    • #1

    Hallo!
    Also ich hab folgendes Problem in Java: Hier ein Auszug aus einem Programm
    try { float zahl1 = EprogIO.readFloat();
    float zahl2 = EprogIO.readFloat();

    float ergebnis = zahl1 + zahl2;
    EprogIO.println(ergebnis);
    }

    catch (Exception e)
    {EprogIO.println("FALSCHE EINGABE");
    }

    Wenn ich nun für eine der beiden Zahlen 48fr eingebe gibt er zurecht FALSCHE EINGABE aus ist ja logisch.
    Jedoch wenn ich für eine der beiden Zahlen z.B: 1245d oder 452f eingebe akzeptiert er die eingabe als richtig
    Meine Frage ist nun ob bei float Zahlen solche eingaben die mit d oder f enden zulässig sind?

  • Marc_enaweg
    Punkte
    771
    Beiträge
    147
    • 7. November 2003 um 15:11
    • #2

    ich nehme an das das java das erkennt und eben wenn eine zahl mit f schreibst einen float-wert nimmt ... und wenn eine mit d schreibst einen double-wert welcher von der eprogIO einfach in einen float umgewandelt wird ...

    ... aber wie gesagt ... das nehm ich mal an ... habs nie ausprobiert ...

  • dose
    Punkte
    1.679
    Beiträge
    335
    • 7. November 2003 um 17:51
    • #3

    Float und Double sind bis auf die Genauigkeit quasi dasselbe, überhaupt beim Einlesen als String...Du könntest mit readDouble() sowohl Floats als auch Doubles einlesen AFAIK.

  • seg2
    Punkte
    655
    Beiträge
    102
    • 11. November 2003 um 20:05
    • #4

    Ja, das ist gleichbedeutend als wenn du z.B. im Code schreibst:
    long l = 355L; oder
    float f = 3.3F; usw.

    Willst du diese "Eingabefehler" vermeiden solltest du den eingelesenen String z.B. mit einer for-Schleife durchlaufen, und jedes Zeichen darauf überprüfen, ob es ungleich 0 bis 9 ist, und wenn ja "FALSCHE EINGABE" ausgeben.


    lg

  • Maximilian Rupp 27. Dezember 2024 um 12:08

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum