Zahl in 10er Potenzen teilen
Eugen
- multimedia (audio & video)
Hallo
Blicke irgendwie nicht mehr durch;-)
Habe eine Zahl z.B. 45678 welche die Anzahl Stunden seit x Tagen repräsentiert. Mittels einer Flip-Clock-Animation möchte ich jede einzelne Zahl einzeln darstellen und animieren wenn sich was ändert. Doch wie kann ich diese Zahl in seine einzelnen Teile splitten? (also 4 - 5 - 6 - 7 - 8)
Danke für eure Hilfe.
Gruss
E
Habe eine Zahl z.B. 45678 welche die Anzahl Stunden seit x Tagen repräsentiert. Mittels einer Flip-Clock-Animation möchte ich jede einzelne Zahl einzeln darstellen und animieren wenn sich was ändert. Doch wie kann ich diese Zahl in seine einzelnen Teile splitten? (also 4 - 5 - 6 - 7 - 8)
In welchem Grafikprogramm?
Falls du dich in der Kategorie geirrt hast: in welcher Sprache?
Ich würde es pragmatisch mit einer Division und abrunden versuchen.
Hi,
Ich würde es pragmatisch mit einer Division und abrunden versuchen.
Oder mit dem Cast in einen String, und anschließendem Zugriff auf dessen einzelne Zeichen.
Oder, oder, oder ... die Möglichkeiten sind zahlreich.
MfG ChrisB
Hallo,
ich würde es so versuchen:
zahl = 45678
ziffer1 = Runden (zahl / 10´000)
ziffer2 = (Runden (zahl / 10´00)) - ziffer1
ziffer3 = (Runden (zahl / 10´0)) - ziffer1 - ziffer2
.
.
.
ich hoffe es hilft
gruß
Amerlander
ziffer1 = Runden (zahl / 10´000)
ziffer2 = (Runden (zahl / 10´00)) - ziffer1
ziffer3 = (Runden (zahl / 10´0)) - ziffer1 - ziffer2
In der Schweiz gibt's keine Schleifen oder? :D
ziffer1 = Runden (zahl / 10´000)
ziffer2 = (Runden (zahl / 10´00)) - ziffer1
ziffer3 = (Runden (zahl / 10´0)) - ziffer1 - ziffer2In der Schweiz gibt's keine Schleifen oder? :D
Nein. "Die Schweiz" ist keine Programmiersprache. Aber du findest dort orthographische Eigenheiten.
mfg Beat
Hi.
zahl = 45678
ziffer1 = Runden (zahl / 10´000)
= 4
ziffer2 = (Runden (zahl / 10´00)) - ziffer1
= 41
ziffer3 = (Runden (zahl / 10´0)) - ziffer1 - ziffer2
= 411
Sofern "Runden" Abrunden bedeutet.
Viele Gruesse,
der Bademeister
Hi.
zahl = 45678
ziffer1 = Runden (zahl / 10´000)
= 4ziffer2 = (Runden (zahl / 10´00)) - ziffer1 *10
= 41ziffer3 = (Runden (zahl / 10´0)) - ziffer1 *100 - ziffer2 *10
= 411Sofern "Runden" Abrunden bedeutet.
Ja sollte, abrunden bedeuten. Und du hast recht, die Ziffern müssten also noch multipliziert werden.
ziffer2 = (Runden (zahl / 10´00)) - ziffer1 *10
ziffer3 = (Runden (zahl / 10´0)) - ziffer1 *100 - ziffer2 *10
Viele Gruesse,
der Bademeister
Lieber Eugen,
wie ChrisB schon angedeutet hat, ist es bestimmt sinnvoller, die Zahl als String zu interpretieren und dann mit Stringoperationen zu zerlegen.
var zahl = 4657;
var ziffern = zahl.toString().split(""); // Array
Liebe Grüße,
Felix Riesterer.
@@Felix Riesterer:
nuqneH
var zahl = 4657;
var ziffern = zahl.toString().split(""); // Array
Wobei split() nicht erforderlich ist: Ein String besitzt ebenso wie ein Array die length-Eigenschaft, und an die einzelnen Zeichen kommt man per []-Operator ran:
~~~javascript
var zahl = 4657;
var string = zahl.toString();
for (var i = 0; i < string.length; i++) alert(string[i]);
Qapla'
Warum kann man S
Hi!
Ich zitiere ChrisB:
"Oder, oder, oder ... die Möglichkeiten sind zahlreich."