C# :: Aufgabe #11 :: Lösung #23

25 Lösungen Lösungen öffentlich
#11

Multiplikation ohne zu multiplizieren

Anfänger - C# von Gustl - 11.11.2012 um 17:24 Uhr
Erstellen Sie ein Konsolenprogramm welches dem Benutzer auffordert 2 Zahlen einzugeben, diese sollen dann multipliziert werden, jedoch ist nur die Grundrechenart Addition erlaubt.

Wenn einer der 2 Zahlen keine Zahl ist, soll eine Fehlermeldung ausgegeben werden und der Benutzer noch einmal aufgefordert werden eine Zahl einzugeben.
#23
vote_ok
von DanielWagner (220 Punkte) - 17.12.2019 um 13:56 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Aufgabe11_MultiplikationOhneZuMultiplizieren
{
    class Program
    {
        static void Main(string[] args)
        {
            bool parseOk = false;
            int userEingabe;
            string eingabe;
            int count = 1;
            int ersteZahl;
            int ergebnis = 0;
            int zwischen = 0;
            List<int> AlleEingaben = new List<int>();

            while (true)
            {

                while (true)
                {
                    
                    if(AlleEingaben.Count >= 2)
                        Console.WriteLine($"Bitte geben Sie eine {count} Zahl ein oder ein NUll fürs Ergebnis");
                    else
                        Console.WriteLine($"Bitte geben Sie eine {count} Zahl ein");


                    eingabe = Console.ReadLine();
                    if (eingabe == "0" && count >= 2)
                        break;
                    else
                    {
                        parseOk = int.TryParse(eingabe, out userEingabe);
                        if (parseOk)
                        {
                            AlleEingaben.Add(userEingabe);
                            count++;
                        }
                        
                    }

                }
                Console.Clear();
                // wie viele Zahlen sind in der Liste
                count = AlleEingaben.Count();

                ersteZahl = AlleEingaben[0];

                if (count == 2) // wenn nur zwei Zahlen multipliziert werden sollen
                {
                    for (int i = 0; i < ersteZahl; i++)
                        ergebnis += AlleEingaben[1];
                    
                }
                else // wenn mehrere
                {
                    for (int i = 0; i < count - 1; i++) 
                    {
                        if(i < 1)
                        {   
                            for (int j = 0; j < ersteZahl; j++)
                                ergebnis += AlleEingaben[i + 1];
                        }
                        else
                        {
                            zwischen = 0;
                            for (int j = 0; j < ergebnis; j++)
                                zwischen += AlleEingaben[i + 1];
                            ergebnis = zwischen;
                        }
                        ersteZahl = AlleEingaben[i+1];      
                    }  
                }

                Console.WriteLine($"Ergebnis ist: {ergebnis}");
                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