Hoi,
Sinds enige tijd ben ik wat aan het experimenteren met python. Nu had ik ergens een idee opgevangen over ideale getallen; waarmee men bedoelde dat dit een getal was, waarvan de som van zijn delers gelijk waren aan dit getal, vb eerste ideaal getal = 6 (delers 1+2+3=6).
Ik wou hiervoor een progammaatje maken om deze getallen te berekenen, bijgevoegd:
<code>
for a in range(1,10000):
teller=0
if a%2==0:
for b in range(1,a):
if a%b==0:
teller=teller+b
if teller==a:
print a
else:
for b in range(1,a,2):
if a%b==0:
teller=teller+b
if teller==a:
print a
</code>
De eerste "if" had ik erin gebracht om het programmaatje iets sneller te maken, omdat dit blijkbaar toch iets vergt van de computer, en het bracht duidelijk snelheidswinst.
Het probleem dat ik hier nog mee heb is dat er ook "niet ideale" getallen getoond worden, met reden dat hij, vanaf dat het getal bereikt wordt in teller, hij dit getal toont, terwijl hij nog niet aan het einde is van de reeks delers. Hier vind ik niet direct een oplossing voor (wat waarschijnlijk wel heel simpel zal zijn, maar niet evident voor een beginnertje).
Wil hier iemand mee helpen?