Stelle wegkürzen nach dem Komma

Neue Frage »

Peli Auf diesen Beitrag antworten »
Stelle wegkürzen nach dem Komma
Hi,

ich schreib gerade an einem Programm in Informatik. Jedenfalls bin ich an einem Punkt wo ich nach dem Komma immer eine Null bekomme bevor das Programm weiter läuft. Dies kann man auch erstmal nicht verhindern sondern im nachhinein umrechnen damits auch richtig erscheint auf dem Bildschirm.

Beispiel: 123.0456
Richtig soll aber raus kommen: 123.456.

Ich habe gerade so einen hänger sry die Rechnung ist bestimmt furchtbar einfach. Ich weiß es geht um irgendwas 10^-1 aber in welchem zusammenhang ich verzweifle bitte um Hilfe! Bitte diesmal um eine stupide Lösung geht ja nicht wirklich bei mir um Mathelernen nur um einen gedanklichen Hänger!

Danke schon einmal!
Steffen Bühler Auf diesen Beitrag antworten »
RE: Stelle wegkürzen nach dem Komma
Wenn ich's richtig verstehe, willst Du den ganzzahligen Teil abtrennen, den verbleibenden Teil hinterm Komma verzehnfachen, und dann den ganzzahligen Teil wieder dazuaddieren. Ist das so? Das kann man doch in einer Programmzeile hinschreiben. Oder um was geht es?

Viele Grüße
Steffen
 
 
Peli Auf diesen Beitrag antworten »

Hi danke habs mal so gemacht. Jedenfalls sollen wir ohne das standart parseInt oder parseDouble einen String in ein Double umwandeln. Funktioniert jetzt so weit. Hat zwar jetzt unnötige 0 stellen am Ende aber es funktioniert erst einmal. Danke dir!

Hier der fertige Code in Java:

public void stringToDouble(String doub){

double zahl = 0;

String[] laenge = doub.split("\\.");


for(int i = 0; i < doub.length(); i++){

char stringToChar = doub.charAt(i);
int charToInt = stringToChar - '0';

int exponent = laenge[0].length() - (i+1);


if(charToInt == -2) {
charToInt = 0;
}


zahl += charToInt * Math.pow(10, exponent);

}


int a = (int) zahl;
double b = (zahl - a) * 10 + a;


System.out.println(b);

}
Steffen Bühler Auf diesen Beitrag antworten »

Hier ist zwar nicht das Informatikerboard, aber einen Bug im Programm durch solch einen Workaround auszugleichen, ist bestimmt nicht das, was der Professor sehen will. Und später auch nicht das, was in meiner Waschmaschine oder Handy laufen sollte. SCNR.

Viele Grüße
Steffen
Peli Auf diesen Beitrag antworten »

ja natürlich nicht in so einem fall gibt es auch eine Standartmethode wie man mit nur einer Zeile so etwas umgestalten kann. Der Prof möchte von uns nur sehen das wir von A nach B ohne Hilfe der vorgegeben Methoden kommen und welche Probleme wir auf diesem Weg hatten. So wird eben der Versuch unternommen die Sprache in der wir schreiben besser zu verstehen.

Komisch wir haben heute erst über Waschmaschinen gesprochen wo zu viel Informatik steckt Big Laugh . Waschmaschien mit Touchscreen und sms funktion = nicht gut braucht keiner
HAL 9000 Auf diesen Beitrag antworten »

Übrigens: Was ist, wenn man die Prozedur mit einem String füttert, der auch noch andere Zeichen als '0'..'9' bzw. '.' enthält? Augenzwinkern

Da vermisse ich oben eine Fehlerbehandlung - man musss diese ja nicht zur großen Wissenschaft erheben, aber rudimentär sollte sie schon da sein.


P.S.: Irgendwie passt das doch besser ins Informatikforum, der mathematische Problemgehalt ist hier ja ziemlich überschaubar.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »