php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.08.2005, 21:02  
Mex
Benutzer
 
Registriert seit: 17.11.2003
Beiträge: 66
Mex
Standard Unlogisches Script?

Mein Script:
PHP-Code:
<?php

$x 
= (-38);
$test $x.'
'
;
while (
$x <= 38) {
    
$x $x+0.1;
    
$test .= $x.'
'
;
}
echo 
$test;

?>
Hier könnt ihr euch ansehen, was das Script macht: http://mstudio.userhost.de/test.php

An einigen Stellen tauchen plötzlich viel zu viele Kommastellen auf:
Zitat:
...
-10.2
-10.1
-9.9999999999997
-9.8999999999997
-9.7999999999997
-9.6999999999997
-9.5999999999997
-9.4999999999997
-9.3999999999997
-9.2999999999997
-9.1999999999997
-9.0999999999997
...
Mex ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.08.2005, 21:11  
Erfahrener Benutzer
 
Registriert seit: 29.04.2005
Beiträge: 323
Dragon26mFR
Standard

versuchs doch mit "round" oder so das rundet die zahlen dann.
:wink:
__________________
Das Leben ist ein scheiß Spiel, aber die Grafik ist einfach geil
Dragon26mFR ist offline  
Alt 22.08.2005, 21:23  
Mex
Benutzer
 
Registriert seit: 17.11.2003
Beiträge: 66
Mex
Standard

Ja darauf bin ich auch schon gekommen, aber ich käme gerne dahinter warum sowas überhaupt passieren kann...
Mex ist offline  
Alt 22.08.2005, 21:27  
Erfahrener Benutzer
 
Registriert seit: 29.04.2005
Beiträge: 323
Dragon26mFR
Standard

Ups das habe ich übersehen.

Ich sehe da auch keine logig.
wenn du
$x = $x+1; machst gehts oder ?
da war doch mal was mit $x+=0.1; oder so KA

OH das kommt auch nur im bereich -9.x bis +9.x und ab +35 sonst gehts *verdattert*

versuch doch mal immer gleich ein echo zu machen
__________________
Das Leben ist ein scheiß Spiel, aber die Grafik ist einfach geil
Dragon26mFR ist offline  
Alt 22.08.2005, 21:34  
Mex
Benutzer
 
Registriert seit: 17.11.2003
Beiträge: 66
Mex
Standard

Hmm... äusserst seltsam, Bug?
Mex ist offline  
Alt 22.08.2005, 22:30  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Das ist kein Bug, sondern eine grundlegende Eigenschaft von Fließkommazahlen.

Den Wert 0.1 kann man nunmal nicht exakt im Binärsystem darstellen.
Je nach Größe des in PHP für die Darstellung einer Fließkommazahl verwendeten Datentyps sind nur eine gewisse Anzahl Stellen verwendbar.

Und wenn nun mehrmals solche ungenauen Werte miteinander verknüpft werden, können sich die Rundungsfehler aufheben oder verstärken.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Diverses aus meinem Apache Logs robo47 Server, Hosting und Workstations 5 25.05.2007 22:45
Script beendet sich ohne Fehlermeldung Zahl PHP Tipps 2006 6 04.06.2006 20:41
passwort script problem PHP Tipps 2006 8 15.02.2006 10:30
[Erledigt] php script und ixed PHP Tipps 2005-2 14 12.10.2005 13:34
[Erledigt] Verzögerung durch included Script? Umgehen? PHP Tipps 2005-2 4 10.07.2005 19:26
[Erledigt] Relay Script PHP-Fortgeschrittene 11 01.06.2005 16:02
[Erledigt] Hilfe bei Download Verwaltungs Script PHP Tipps 2005 8 04.05.2005 10:29
Fehler bei Script, welches Ordner erstellt PsychoEagle PHP Tipps 2005 3 23.04.2005 16:03
kurze frage zu script im script PHP Tipps 2005 4 04.02.2005 08:53
[Erledigt] python script mit php aufrufen... PHP-Fortgeschrittene 1 17.11.2004 17:11
PHP Script aus PHP aufrufen Stümper PHP Tipps 2004 5 26.09.2004 08:15
"das" Script oder "der" Script?? Simbo Off-Topic Diskussionen 31 16.09.2004 17:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php macht was unlogisches

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:31 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.