PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ziffernsumme


Oblivion
2005-09-04, 17:07:44
So ich brauch nomal heure Hilfe :(

ich möchte meinem Cousin der jetzt in die Schule kommt einen kleinen Taschenrechner programmieren in JS (ja er kann ins Internet und ein bisschen mim PC umgehn ;) ) also die 4 Grundrechnungsarten hab ich schon - nur hab ich mir gedacht dass die Ziffernsumme auch ganz hilfreich wäre, jedoch enden da meine JS Kentnisse - bitte um Hilfe

grandmasterw
2005-09-04, 17:13:29
Najo, du hast die Zahl x, von der du die Ziffernsumme bilden willst.

Dann machst du eine Schleife:

while (x>0) {
z += x % 10;
x = x / 10;
x abrunden, bzw. ganzzahldivision oben
}

danach ist in z die ziffernsumme drin.
hab keine ahnung von javascript, so ca. könnts aussehn.

Oblivion
2005-09-04, 17:35:44
So ein Konzept hatte ich auch schon ;) nur bräucht ich den Quellcode

Anmerkung: bitte keine Kommentare wie:"solltest dich mal damit beschäftigen, die Grundlagen lernen" usw.

ich will nur des Programm für meinen Cousin schreiben, sonst brauch ich JS nie im Leben

HellHorse
2005-09-04, 17:55:53
aString inject: 0 into: [ :sum :each |
sum + each digitValue ]

Oblivion
2005-09-04, 18:41:43
Damit fang i leider net viel an - wie soll ich denn des Einbaun?

Coda
2005-09-04, 18:47:31
Das ist Smalltalk. Ich find den "Witz" ziemlich flach...

Oblivion
2005-09-04, 18:49:26
Das ist Smalltalk. Ich find den "Witz" ziemlich flach...

Und ich versteh dein Posting net - ich hab wirklich keine Ahnung wie ich das einbaun soll

zeigs mir halt bitte

HellHorse
2005-09-04, 19:38:49
Und ich versteh dein Posting net - ich hab wirklich keine Ahnung wie ich das einbaun soll
Die Idee ist du iteriest über die einzelnen Stellen einer Zahl und zählst sie fortlaufend zusammen (wie man das halt so macht für die Quersumme). Das geht wahrscheinlich mit einer Zahl nicht, deshalb konvetierst du sie zuerst zu einem String und iterierst dann über die einzelnen Characters (k.a ob for...in geht, aber ich drücke mal die Daumen). Dann musst du noch die Characters wieder zu Zahlen zurückkonvertieren damit du sie aufsummieren kannst und gut ist.
Ja, das ist ineffizient aber verständlich und bietet weniger Fehlermöglichkeiten.

Oblivion
2005-09-04, 20:23:29
Die Idee ist du iteriest über die einzelnen Stellen einer Zahl und zählst sie fortlaufend zusammen (wie man das halt so macht für die Quersumme). Das geht wahrscheinlich mit einer Zahl nicht, deshalb konvetierst du sie zuerst zu einem String und iterierst dann über die einzelnen Characters (k.a ob for...in geht, aber ich drücke mal die Daumen). Dann musst du noch die Characters wieder zu Zahlen zurückkonvertieren damit du sie aufsummieren kannst und gut ist.
Ja, das ist ineffizient aber verständlich und bietet weniger Fehlermöglichkeiten.

Ok den Text versteh ich mal soweit

btw. das Problem is gelöst dank Codas Hilfe