Wertevergleich//Infinity

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,

ich soll ein Programm schreiben, dass mir den größtmöglichen positiven Double-Wert am Rechner ausgibt. An sich ist dies kein Problem, aber ich muss die entsprechende Variable irgendwann mit INFINITY vergleichen, um die Schleife abbrechen zu lassen.

Nun gibt mir aber der Compiler die typische Fehlermeldung aus, dass er die Variable (z.B. wert) und "infinity" aufgrund der untersch. Datentypen nicht miteinander vergleichen kann.

Code:
while(wert!="infinity")
{...}

Eine andere Variante wäre die Typenkonvertierung, sodass die Variable wert in Char oder String umgewandelt wird. Aber mir ist zudem die entsprechende Methode nicht bekannt.

Code:
char wert2=Char.ToChar(wert);
..wird leider auch nicht kompiliert.

Vll. hat jemand von euch einen Vorschlag.

Danke.
 

akira

Bekanntes Mitglied
Wie wäre es denn damit:

Code:
System.out.println(Double.MAX_VALUE);
 
G

Guest

Gast
akira hat gesagt.:
Wie wäre es denn damit:

Code:
System.out.println(Double.MAX_VALUE);

Super Idee, aber für meine Aufgabe ist es unbrauchbar, da ich eine Variable m=1 mit einer Schleife solange verdoppeln soll, bis sie den Wert Infinity erhält und dann die Schleife abbricht.

Kann man die Werte untersch. Datentypen wirklich nicht vergleichen?
 
G

Guest

Gast
na dann so:

Code:
double d = 1.0d;
while(d<Double.POSITIVE_INFINITY) 
    d *= 2.0d;
 
G

Guest

Gast
Anonymous hat gesagt.:
na dann so:

Code:
double d = 1.0d;
while(d<Double.POSITIVE_INFINITY) 
    d *= 2.0d;

Ui, aber dann kenne ich den größten Double-Wert ja schon und versuche ihn trotzdem _nochmal_ zu bestimmen. Ich weiß nicht, ob das Sinn macht und so gewollt ist. Trotzdem werde ich es mir mal aufschreiben - vielleicht gibt es Pluspunkte. Danke!

Anders vergleichen (wie oben beschrieben) kann ich es also nicht?!
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben