Prototype: Number.prototype.runden [Flash 8]
| Beiträge: 130 Wohnort: Berlin/Germany Registriert: Mar 2002
| 23.04.2005, 12:05
Runden (Round) von Zahlen mit drei Modis
Prototype:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | // --------------------------------------------------------------------
// Number.prototype.runden
//
// Definition: zahl.runden(Rundungsmodus, DezimalZeichen, Genauigkeit)
//
// pModus - Rundungsmodus (Auswahl: exc, dif, nat)
// pDezZeichen - Dezimal Trennzeichen
// pStellen - Prezision (Genauigkeit) - legt die Anzahl der Stellen nach dem Dezimalzeichen fest
//
// Syntax: zahl_variable.runden("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)
//
// ---------------------------------------------------------------------
Number.prototype.runden = function (pModus, pDezZeichen, pStellen)
{
var prezision = Math.pow (10, pStellen);
if (pModus == "exc")
{
var resultat = String (Math.ceil (this * prezision) / prezision);
}
else if (pModus == "dif")
{
var resultat = String (Math.floor (this * prezision) / prezision);
}
else if (pModus == "nat")
{
var resultat = String (Math.round (this * 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;
};
|
Beispiel Aufruf:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | // Verwenden - Beispiele
zahl_1 = 999.444536455;
zahl_2 = 999.444536455;
zahl_3 = 999.444536455;
zahl_4 = 999.44;
gerundet_1 = zahl_1.runden ("exc", ",", 2);
gerundet_2 = zahl_2.runden ("dif", ".", 3);
gerundet_3 = zahl_3.runden ("nat", ",", 3);
gerundet_4 = zahl_4.runden ("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 ("-----------------------------");
|
[Flashstar]
http://www.flashstar.de | |
| Ähnliche Beiträge zum Thema | |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News 
Regeln & Bedingungen
|