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

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ß
#4
vote_ok
von Nerv28 (80 Punkte) - 09.03.2021 um 10:24 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Zweierpotenz
{
    class Program
    {
        static void Main(string[] args)
        {
            double dEingabe = 0, dTemp = 0;
            bool bTemp = false;
            while (bTemp == false)
            {
                Console.WriteLine("Bitte geben Sie eine Zahl ein.");
                if (!double.TryParse(Console.ReadLine(), out dEingabe)) { Console.Clear(); Console.WriteLine("Bitte geben Sie nur Zahlen ein!"); } else { bTemp = true; }
            }
            dTemp = Math.Round(Math.Pow(dEingabe, 0.5), 1);
            Console.Write("Lösung: ");
            if (dTemp * dTemp != dEingabe) { Console.WriteLine($"keine, da keine Ganzzahl zur Basis 2 die Zahl {dEingabe} ergibt."); } 
            else { Console.WriteLine($"{dTemp}, denn 2 hoch {dTemp} = {dEingabe}"); }
            Console.ReadLine();
        }
    }
}

Kommentare:

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

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

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.