C# :: Aufgabe #86 :: Lösung #3

3 Lösungen Lösungen öffentlich
#86

Giuga-Zahlen berechnen

Anfänger - C# von Gustl - 13.02.2015 um 12:42 Uhr
Eine natürliche Zahl n ist eine Giuga-Zahl, wenn alle ihre Primteiler p den Wert n/p - 1 teilen.

Schreibe ein Programm welches alle Giuga-Zahlen bis zu einer festen Obergrenze ausgibt.

Erläuterung zu einer Giuga-Zahl findest du hier: Wikipedia
#3
vote_ok
von stbehl (1640 Punkte) - 22.02.2018 um 14:39 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TrainYourProgrammer86
{
    class Program
    {
        static void Main(string[] args)
        {
            bool giuga = false;
            Console.WriteLine("GIUGA ZAHLEN");
            Console.Write("Geben Sie eine Zahl ein, welche überprüft werden soll: ");
            int zahl = Convert.ToInt32(Console.ReadLine());
            int[] primteiler = new int [zahl];
            int teiler = 0;

            int zaehler = 0;
            int zerlegen = zahl;
            for (int i = 2; i <= zahl; i++)
            {
                if (zerlegen % i == 0)
                {
                    zerlegen = zerlegen / i;
                    primteiler[zaehler] = i;
                    zaehler++;
                    i = 2;
                }
            }

            for (int i = 0; i <= primteiler.Length-1; i++)
            {
                if (primteiler[i] != 0)
                {
                    teiler = (zahl / primteiler[i]) - 1;
                    if (teiler % primteiler[i] == 0)
                    {
                        giuga = true;
                    }
                    else
                    {
                        giuga = false;
                        break;
                    }
                }
            }

            if (giuga)
            {
                Console.WriteLine("Die Zahl {0} ist eine Giuga Zahl.", zahl);
            }
            else
            {
                Console.WriteLine("Die Zahl {0} ist keine Giuga Zahl.", zahl);
            }


            Console.ReadKey();
        }
    }
}

Kommentare:

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

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