![]() |
Armstrongzahlen
Hi soll dass in c programmieren und hab keine ahnung wie das geht. Wäre um tipps sehr dankbar
Eine Zahl mit n Ziffern in dezimaler Schreibweise heißt Arm-strong – Zahl, wenn sie gleich der Summe der n – ten Potenzen ihrer Ziffern ist. Beispiel: die Zahl 153 hat 3 Ziffern und es gilt:1³+5³+3³ .Schreiben Sie eine Funktion armstrong(n), die 1 zurückliefert, wenn die Ganzzahl n eine Armstrongzahl ist. Sonst wird 0 zurückgegeben. Erweitern Sie diese Funktion zur Berechnung beliebiger Armstrongzahlen größer als Null. Testen Sie diese Funktion im Hauptprogramm durch Ausgabe aller Arm-strongzahlen zwischen 1 und 100000. |
das ist simple:
beispiel in python-code, aber sicher verständlich. musst nur nach c übersetzen ;) import string import math for zahl in range(1, 1000): zahlstring = str(zahl) zahllaenge = len(zahlstring) ziffernsumme = 0 for ziffer in range(1, zahllaenge+1): tmpziffer = int(zahlstring[ziffer-1]) ziffernsumme = ziffernsumme + pow(tmpziffer, zahllaenge) if ziffernsumme == zahl: print "Zahl %d ist Armstrong-Zahl" % zahl |
danke für den tipp aber leider bin ich noch anfänger und sowas wie python code sagt mir leider nix.
|
Hirn anstrengen und die Hausübung selber machen :D :rolleyes: ;)
lg |
probier ich ja schon seit 3 stunden aber irgendwie fällt mir nix ein und wenn das gehirn dann auch noch sehr klein ist dann is um so schwieriger
|
für bestimmte zahlen wie zum beispiel von 100 bis 999 oder 1000 bis 9999 könnte ich es ja programmieren mein problem liegt darin es zu verallgemeinern dass das programm die stellen von 1 bis n der zahl erkennt.
|
schnell mal übersetzt:
Code:
int main () |
Danke für die kleine übersetzung aber jetzt hätt ich noch zwei fragen wo kommt die 20 her und die 48?
|
was ich echt nicht verstehe an dem ganzen:
du bekommst aufgaben die vom schwierigkeitsgrad sehr einfach gehalten sind und kannst damit überhaupt nichts anfangen!? Wenn euch euer Prof. solche Aufgaben gibt dann habt ihr ja die C-Grundlagen schon durch, also müsstest du das ja schon können (du kennst ja laut deiner Aussage nicht mal ein char array). Wenn ich mich an meine HTL Zeit zurückerinnere dann sind wir da schon anders zur Sache gegangen. Meines erachtens ist das Problem das viele Leute kein Algorithmisches Denken mehr haben und beim kleinsten Problem schon nicht mehr weiter wissen... ... |
mein leitspruch:
ich kann jedem affen beibringen, dass er auf einen knopf drückt, damit er eine banane bekommt - das heisst aber nicht, dass er intelligent ist. ;) |
Alle Zeitangaben in WEZ +2. Es ist jetzt 17:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag