C# :: Aufgabe #326 :: Lösung #1

3 Lösungen Lösungen öffentlich
#326

Teilersumme natürlicher Zahlen

Anfänger - C# von JKooP - 04.10.2020 um 11:49 Uhr
Schreibe eine Methode/Funktion, mit der es möglich ist zu prüfen, ob es sich bei einer natürlichen Zahl um eine defiziente,
vollkommende oder abundante Zahl handelt.
Betrachtet wird die Summe aller Teiler ohne die Zahl selbst.

Beispiel Zahl 80:

1 + 2 + 4 + 5 + 8 + 10 + 20 + 40 = 106 --> abundant, da

Summe kleiner als Zahl --> defizient
Summe gleich Zahl --> vollkommen
Summe größer als Zahl --> abundant

Viel Spaß
#1
vote_ok
von Waldgeist (2310 Punkte) - 12.10.2020 um 14:17 Uhr
Hallo,

hier meine Lösung:

Quellcode ausblenden C#-Code
using System;
using System.Windows.Forms;

namespace Aufgabe_326___Teiersumme_natürliche_Zahlen
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Close();
        }

        public static int Berechnung(int Zahl)
        {
            int Summe = 0;

            for (int i = 1; i < Zahl; i++)
            {
                if ((Zahl % i) == 0)
                {
                    Summe = Summe + i;
                }
            }

            return Summe;
        }

        public int natürlicheZahl = 0;
        public int Teilersumme = 0;

        private void button1_Click(object sender, EventArgs e)
        {
            natürlicheZahl = Convert.ToInt32(textBox1.Text);

            Teilersumme = Berechnung(natürlicheZahl);

            textBox2.Text = Teilersumme.ToString();

            if (Teilersumme == natürlicheZahl)
            {
                textBox3.Text = "Dies ist eine vollkomene Zahl";
            }
            else if (Teilersumme < natürlicheZahl)
            {
                textBox3.Text = "Diese Zahl nennt man defizient";
            }
            else
            {
                textBox3.Text = "Diese Zahl nennt man abundant";
            }
        }
    }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben