Wie errechne ich die Quersumme aus einer eingegbene Zahl ?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Dienstag 5. Oktober 2004, 14:28

Hi,

im Ursprungsposting wurde eben nach einer Lösung mit Modulo gefragt, das wird bei der Lösung mit den Strings eben nicht benötigt, bzw. ist dann in der Umwandlung von int zu str versteckt. Darum meine Mehzeilige Lösung eben mit Modulo.
Ich verwende List Comprehensions inzwischen sehr oft, dafür kein map oder filter mehr. Schön wirds bei Python2.4 mit den Generatorexpressions, dann ists von Vorteil wenn man List Comprehensions versteht.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Dienstag 5. Oktober 2004, 14:43

Hi!

Hoppla, daß swaTch etwas mit Modulo wollte hab ich ganz überlesen. Sorry Dookie, ich wollte Dein Snippet nicht schlechter machen als es eh schon ist :D (is nur Spaß!)

Gruß, mawe
seli
User
Beiträge: 12
Registriert: Montag 4. Oktober 2004, 22:58
Kontaktdaten:

Montag 18. Oktober 2004, 12:33

Apropos lange Zeilen.
Ich hab hier ein Dictionary. Ich wollte wissen, was drin ist. Ich seh dass dictionarry["service"] auch ein dict ist. ich schaue mir die keys an, dann die keys davon, und....
naja so siehts aus:

Code: Alles auswählen

print self.errorDict[self.errorDict.keys()[1]][self.errorDict[self.errorDict.keys()[1]].keys()[0]]
Kapiert man doch auf den ersten Blick, oder? :lol:
[size=75]:wq[/size]
DerFragensteller

Sonntag 29. Mai 2005, 19:01

hallo, ich habe dieselbe frage nur brauch ich eine rekursive lösung. kann mir da vielleicht einer weiterhelfen? vielen dank schonmal im voraus.
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Sonntag 29. Mai 2005, 19:50

Code: Alles auswählen

def sumup(c,s=0):
	if type(c) == list:
		if len(c):
			s += c.pop(0)
			return sumup(c,s)
		else:
			return s
	else:
		c = [int(c) for c in str(c)]
		s += c.pop(0)
		return sumup(c,s)
		
if __name__ == '__main__':
	cifer = 2345262
	print sumup(cifer)
Ist aber ein bißchen umständlich ....
Wozu brauchst Du denn so etwas?

Gruß,
Christian
DerFragensteller

Sonntag 29. Mai 2005, 20:45

für meine morgige informatik-klausur, das war eine der übungsaufgaben. erstelle iterativ und rekursiv einen code zum erstellen einer quersumme...
blöde aufgabe. rekursive lösung tzee....

aber dennoch vielen dank...
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Sonntag 29. Mai 2005, 21:13

Wieso komme ich mir jetzt veräppelt vor? (Na ja, selber schuld, wenn man so eine Frage beantwortet.)

Du weißt aber schon, daß das Codebeispiel nicht lupenrein ist?

Christian

PS Lies mal dies: http://www.python-forum.de/viewtopic.php?t=1689
DerFragensteller

Montag 6. Juni 2005, 00:51

ist ja jetzt nicht so, dass ich nichts getan hätte, ich hab selbst 2stunden daran gesessen und getan. auch habe ich ahnung von python. bin aber noch dabei mir das alles beizubringen. für die klausur hat mir das auch nicht geholfen... er sagte mir: schön blöd, dass du dir diese aufgaben ausgesucht hast. dadurch, dass ich den code aber von dir bekommen habe, konnte ich einiges nachvollziehen und lernen. und dafür vielen dank.
Antworten