Ruby :: Aufgabe #226 :: Lösung #1
1 Lösung

#226
Summe alle Teiler einer positven Ganzzahl
Anfänger - Ruby
von hollst
- 18.06.2019 um 20:49 Uhr
Man schreibe eine Funktion SIGMA(n) mit n > 0 und ganzzahlig, wobei der Funktionswert sich
aus der Summe aller ganzzahligen, positven Teiler von n ergibt.
Beispiele (Zahl; Teiler; Funktionswert);
1; 1; 1
2; 1, 2; 3
4; 1, 2, 4; 7
5; 1, 5; 6
...
12; 1, 2, 3, 4, 6, 12; 28
...
100; 1, 2, 4, 5, 10, 20, 25, 50, 100; 217
Für 0 < n <= 200 sollte sich der beigefügte Pinplot ergeben.
Viel Spaß!
aus der Summe aller ganzzahligen, positven Teiler von n ergibt.
Beispiele (Zahl; Teiler; Funktionswert);
1; 1; 1
2; 1, 2; 3
4; 1, 2, 4; 7
5; 1, 5; 6
...
12; 1, 2, 3, 4, 6, 12; 28
...
100; 1, 2, 4, 5, 10, 20, 25, 50, 100; 217
Für 0 < n <= 200 sollte sich der beigefügte Pinplot ergeben.
Viel Spaß!
#1

von nlo22 (120 Punkte)
- 31.07.2019 um 16:08 Uhr

def sigma(n) if not n.integer? or not n > 0 raise ArgumentError, "#{n} ist keine positive ganze Zahl" end result = "#{n}" summe_teiler = 0 for i in 1..n if n%i == 0 then summe_teiler += i result << (i == 1 ? ";" : ",") result << "#{i}" end end result << ";#{summe_teiler}" return result end
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1