C# :: Aufgabe #60 :: Lösung #4
9 Lösungen

#60
vollkommene Zahl (Mathematisches Problem)
Anfänger - C#
von bibir
- 03.09.2014 um 08:21 Uhr
Man nennt eine natürliche Zahl N "vollkommen", wenn die Summe aller echten Teiler von N gleich N ist.
Zum Beispiel ist 28 eine vollkommene Zahl, da 1 + 2 + 4 + 7 + 14 = 28 ist.
Schreibe ein Programm/Skript, das beliebig oft eine Zahl N (mit 0 < N < 100000) einliest und feststellt, ob N eine vollkommene Zahl ist. Falls ja, soll das Programm N und die zugehörenden echten Teiler ausgeben, andernfalls ist nur N und die Meldung "ERFUELLT DIE BEDINGUNG NICHT" zu drucken.
Zum Beispiel ist 28 eine vollkommene Zahl, da 1 + 2 + 4 + 7 + 14 = 28 ist.
Schreibe ein Programm/Skript, das beliebig oft eine Zahl N (mit 0 < N < 100000) einliest und feststellt, ob N eine vollkommene Zahl ist. Falls ja, soll das Programm N und die zugehörenden echten Teiler ausgeben, andernfalls ist nur N und die Meldung "ERFUELLT DIE BEDINGUNG NICHT" zu drucken.
#4

von dotLogix (150 Punkte)
- 06.01.2015 um 19:05 Uhr

// ================================================== // Copyright 2014 (C) , dotLogix // Author: Alexander Schill <alexander@schillnet.de>. // ================================================== namespace VolkommeneZahl { #region Using Directives using System; using System.Collections.ObjectModel; using System.Linq; #endregion internal class Program { private static void Main(string[] args) { while(true) { Console.Write("Zahl eingeben: "); var n = int.Parse(Console.ReadLine()); var collection = new Collection<int>(); for(var i = 1; i < n; i++) if(n % i == 0) collection.Add(i); var sum = collection.Sum(); Console.WriteLine(sum == n ? string.Join("+", collection) + " = " + n : n + " erfüllt die Bedingung nicht"); } } } }
kurz und funktioniert :D
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1