 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
23.04.2005, 15:02
|
#1
|
|
TP-Moderator
Registriert seit: Oct 2002
Ort: Berlin/Germany
|
Runden (Klasse - ActionScript 2.0)
Wenn wir schon mal dabei sind für die ActionScript 2.0 Fans - statische Methoden aus der Runden-Klasse.
PHP-Code:
// --------------------------------------------------------------------
// Klasse: Runden (Runden.as)
//
// Definition: Runden.runden_extended(pZahl, Rundungsmodus, DezimalZeichen, Genauigkeit)
//
// pZahl - zu rundende Zahl
// pModus - Rundungsmodus (Auswahl: exc, dif, nat)
// pDezZeichen - Dezimal Trennzeichen
// pStellen - Prezision (Genauigkeit) - legt die Anzahl der Stellen nach dem Dezimalzeichen fest
//
// Syntax:
// gerundet_1 = Runden.runden_extended(zahl_1,"exc", ",", 2);
//
// Anmerkung zu pModus - folgende Modien stehen zur Verfügung:
// "exc" : (bsp: 10.1 -> 11 / 10.6 -> 11)
// "dif" : (bsp: 10.8 -> 10 / 10.6 -> 10)
// "nat" : (bsp: 10.1 -> 10 / 10.6 -> 11)
//
// "exc" : ceil (Obergrenze - ist die nächstliegende Ganzzahl, die größer oder gleich der Zahl ist)
// "dif" : floor (Untergrenze - ist die nächstliegende Ganzzahl, die kleiner oder gleich der angegebenen Zahl ist)
// "nat" : round (Runden - rundet den Wert des Parameters x auf die nächstliegende Ganzzahl auf oder ab und gibt diese zurück)
//
// ---------------------------------------------------------------------
class Runden extends Number {
// Runden - Ausführliche Fassung
static function runden_extended(pZahl:Number, pModus:String, pDezZeichen:String, pStellen:Number) {
var prezision = Math.pow(10, pStellen);
if (pModus == "exc") {
var resultat = String(Math.ceil(pZahl*prezision)/prezision);
} else if (pModus == "dif") {
var resultat = String(Math.floor(pZahl*prezision)/prezision);
} else if (pModus == "nat") {
var resultat = String(Math.round(pZahl*prezision)/prezision);
} else {
return "Fehler: Modus fehlt!";
}
var dezPunkt = resultat.indexOf(".");
if (dezPunkt == -1) {
resultat += ".";
dezPunkt = resultat.length;
}
var dezZahl = resultat.substr(dezPunkt+1);
var i = dezZahl.length;
while (i<pStellen) {
resultat += "0";
i++;
}
resultat = resultat.split(".").join(pDezZeichen);
if (pDezZeichen != ",") {
return Number(resultat);
}
return resultat;
}
// Runden - Kurzfassung
static function runden_short(pZahl:Number, pModus:String, pDezZeichen:String, pStellen:Number) {
if (pModus == "exc") {
return (Math.floor(pZahl)+pDezZeichen+Math.ceil(pZahl*Math.pow(10, pStellen)).toString().slice(-pStellen));
} else if (pModus == "dif") {
return (Math.floor(pZahl)+pDezZeichen+Math.floor(pZahl*Math.pow(10, pStellen)).toString().slice(-pStellen));
} else if (pModus == "nat") {
return (Math.floor(pZahl)+pDezZeichen+Math.round(pZahl*Math.pow(10, pStellen)).toString().slice(-pStellen));
} else {
return "Fehler: Modus fehlt!";
}
}
// Runden - nur natürlicher Rundungsmodus
static function runden_nat(pZahl:Number, pModus:String, pDezZeichen:String, pStellen:Number) {
return (Math.floor(pZahl)+pDezZeichen+Math.round(pZahl*Math.pow(10, pStellen)).toString().slice(-pStellen));
}
}
PHP-Code:
// Im Flash Film
// Verwenden - Beispiele
zahl_1 = 999.444536455;
zahl_2 = 999.444536455;
zahl_3 = 999.444536455;
zahl_4 = 999.44;
gerundet_1 = Runden.runden_extended(zahl_1,"exc", ",", 2);
gerundet_2 = Runden.runden_extended(zahl_2,"dif", ".", 3);
gerundet_3 = Runden.runden_extended(zahl_3,"nat", ".", 3);
gerundet_4 = Runden.runden_extended(zahl_4,"nat", ",", 3);
trace ("-----------------------------");
trace ("Zahl 1 original: " + zahl_1);
trace ("Zahl 1 gerundet: " + gerundet_1);
trace ("Zahl 2 original: " + zahl_2);
trace ("Zahl 2 gerundet: " + gerundet_2);
trace ("Zahl 3 original: " + zahl_3);
trace ("Zahl 3 gerundet: " + gerundet_3);
trace ("Zahl 4 original: " + zahl_4);
trace ("Zahl 4 gerundet: " + gerundet_4);
trace ("-----------------------------");
trace ("Zahl 1 gerundet: " + Runden.runden_nat(zahl_4,"nat", ",", 2))
Liebe Grüsse
Matze K.
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 08:10 Uhr.
|
 |