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

6 Lösungen Lösungen öffentlich
#366

Zweierpotenz (Power Of Two)

Anfänger - C# von JKooP - 06.03.2021 um 11:51 Uhr
Erstelle eine Methode/Funktion, mit der man bestimmen kann,
ob die übergebene Zahl als Ganzzahl- Potenz (Integer) zur Basis 2 geschrieben werden kann.

Beispiele:

Zahl: 1 => true
Lösung: 0, denn 2 hoch 0 = 1

Zahl: 16 => true
Lösung: 4, denn 2 hoch 4 = 16

Zahl: 3 => false
Lösung: keine, da keine Ganzzahl zur Basis 2 die Zahl 3 ergibt

Für Fortgeschrittene:
Die Aufgabe ohne Zuhilfenahme der eingebauten Logarithmusfunktionen lösen.

Viel Spaß
#3
vote_ok
von Waldgeist (2310 Punkte) - 08.03.2021 um 20:41 Uhr
Hallo,

beigefügt meine Lösung:

Quellcode ausblenden C#-Code
using System;

namespace _366_Zweierpotenz
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            double eingabe = 0;
            double ergebnis = 0;
            int vergleich = 0;

            Console.WriteLine("Gib eine Zahl ein: ");
            eingabe = double.Parse(Console.ReadLine());
            ergebnis = Math.Log2(eingabe);

            vergleich = (int)ergebnis;

            if (vergleich == ergebnis)
            {
                Console.WriteLine($"Es ist möglich die eingegebene Zahl " + eingabe + " als Ganzzahl Potenz zur Basis 2 zu schreiben");
                Console.WriteLine($"Das Ergebnis lautet " + ergebnis);
                Console.WriteLine($"Denn 2 hoch " + ergebnis + " = " + eingabe);
            }
            else
            {
                Console.WriteLine($"Es ist leider nicht möglich die eingebe Zahl " + eingabe + " als Ganzzahl Potenz zur Basis 2 zu schreiben");
            }
        }
    }
}

Kommentare:

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

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