Summe der Quadrate der ersten 20 natürlichen Zahlen ausgeben?

InfoFreak644  28.12.2020, 21:07

Also du meinst, dass man von 1² - 20² alle Ergebnisse ausgibt und sie dann addiert?

HeySonny 
Fragesteller
 28.12.2020, 21:09

ja ich denke schon. Ich habe leider keine Lösungen, aber ich hätte auch das gemeint... LG


5 Antworten

Moin.

Ich mach das ganze mal Zeile für Zeile.

Also in Python:

for i in range(1, 21)

Also hat Zahlen 1 bis 20

Dann kurz was zu sogenannten f Strings:

Das ist ein String: 'Ich bin ein String.'

Das ist ein f String: f'Ich bin besser.'

Dat dolle an den Dinger ist, dass du Variablen einfacher einbauen kannst. Sagen wir wir wollen die Variable x einbauen:

f'Ergebnis: {x}'

Du siehst, um Variablen einzubauen machst du Mengenklammern um den Namen.

Das benutzen wir in der for Schleife:

for i in range(0, 21):

print(f'{i} zum Quadrat ist {i**2}')

Also wir bauen i ein, dass in der Reihenfolge 1, 2, 3, ..., 20 ist, und dann geben wir i**2 aus. Also i**2 ist das Quadrat.

Das wärs

Woher ich das weiß:Hobby – Hobby Programmierer

kommt drauf an was dein ziel ist.
Gibt direkt formeln um die summe der ersten n quadratzahlen zu berechnen.
Also das kann man durchaus als Einzeiler lösen.
Was aber nicht viel programmierung braucht und wohl eher nicht gemeint ist.

Vermutlich sollst du mit Schrleifen und so, im Prinzip manuell, die einzelnen Quadratzahlen addieren.

sowas wie

sum=1^2;
print("1^2=1");

for (int i=2;i<=n;i++){
print(i+"^2="+i^2);
sum=sum+i^2;
}

print("Die Summe der ersten "+n+" Quadratzahlen ist "+sum);

ist jetzt pseudo java code.
aber lässt sich analog in python schreiben.

wenn du for schleifen nicht magst, geht auch while.
musst halt ganz am anfang int i=1 setzen.
und am ende der while schleife ein i++ schreiben

Hallo,

es gibt dafür eine Summenformel:

SUMME (k=1 bis n) über k²=n³/3+n²/2+n/6.

Vielleicht hilft Dir die.

Herzliche Grüße,

Willy

print(sum(x**2 for x in range(1,21)))

Kurz und schmerzlos.

Halbrecht  28.12.2020, 21:29

welchen sinn machen die Sternchen bei x ** 2 ? Warum reicht nicht x².......Welche Besonderheit braucht Python da ?

0
KarlRanseierIII  28.12.2020, 22:36
@Halbrecht

x**y ist x^y - alternativ math.pow(x,y). Und natürlich könnte ich auch x*x anstatt x**2 schreiben, ich wollte aber näher an der Potenz bleiben.

3

Bin zwar auch erst neu aber hab dieses Programm erstellt.

d = 0
z = 0
while d < 20:
  d = d + 1
  z = d * d + z
print(z)