Browse Source

'Rekursion' ändern

master
Peter Ostmann 6 years ago
parent
commit
d877acac7b
  1. 51
      Rekursion

51
Rekursion

@ -6,33 +6,15 @@ namespace Rekursion
{
public int addiereSummanden(int a, int b)
{
if (b == 0 && a == 0)
{
return 0;
}
else if (a == 0)
{
return 1 + addiereSummanden(0, b - 1);
}
else
{
return 1 + addiereSummanden(a - 1, b);
}
if (b.Equals(0) && a.Equals(0)) { return 0; }
else if (a.Equals(0)) { return 1 + addiereSummanden(0, b - 1); }
else { return 1 + addiereSummanden(a - 1, b); }
}
public int multipliziereFaktoren(int a, int b)
{
{
if (a == 0 || b == 0)
{
return 0;
}
else
{
return addiereSummanden(a, multipliziereFaktoren(a, b - 1));
}
}
if (a.Equals(0) || b.Equals(0)) return 0;
else return addiereSummanden(a, multipliziereFaktoren(a, b - 1));
}
}
@ -40,39 +22,36 @@ namespace Rekursion
{
static void Main(string[] args)
{
Console.WriteLine("Bitte wählen Sie aus, was Sie tun möchten:\r\n \r\nDrücken Sie A um 2 Summanden zu addieren\r\nDrücken Sie M um 2 Faktoren miteinander zu multiplizieren");
char auswahl = (char)Console.Read();
if (auswahl.Equals("A")||auswahl.Equals("a"))
{
Console.WriteLine("Sie haben: 2 Summanden addieren gewählt, bitte geben Sie nun den ersten Summanden ein: ");
Console.WriteLine("Bitte wählen Sie aus, was Sie tun möchten:\r\n \r\nDrücken Sie A und dann Return, um 2 Summanden zu addieren\r\nDrücken Sie M und dann Return um 2 Faktoren miteinander zu multiplizieren");
string auswahl = Console.ReadLine();
int summandA = Console.Read();
if (auswahl.Equals("A") || auswahl.Equals("a"))
{
Console.WriteLine("Sie haben: 2 Summanden addieren gewählt. \r\nBitte geben Sie nun den ersten Summanden ein: ");
int summandA = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Bitte geben Sie nun den zweiten Summanden ein: ");
int summandB = Convert.ToInt16(Console.ReadLine());
int summandB = Console.Read();
Console.WriteLine(Convert.ToString(summandA) + " " + Convert.ToString(summandB));
RekursiveBerechnung rb = new RekursiveBerechnung();
int ergebnis = rb.addiereSummanden(summandA, summandB);
Console.WriteLine("Die Summe der Summanden A = {0} und B {0} ist {0}", summandA, summandB, ergebnis);
Console.WriteLine("Die Summe der Summanden A = {0} und B = {0} ist {0}", summandA, summandB, ergebnis);
}
else
{
Console.WriteLine("Sie haben: 2 Faktoren miteinander multiplizieren gewählt, bitte geben Sie nun den ersten Faktor ein: ");
string faktorA = Console.ReadLine();
Console.WriteLine("Bitte geben Sie nun den zweiten Faktor ein: ");
string faktorB = Console.ReadLine();
RekursiveBerechnung rb = new RekursiveBerechnung();
int ergebnis = rb.multipliziereFaktoren(Convert.ToInt16(faktorA), Convert.ToInt16(faktorB));
Console.WriteLine("Die Summe der Summanden A = {0} und B {0} ist {0}", faktorA, faktorB, ergebnis);
Console.WriteLine("Das Produkt der Faktoren A = {0} und B = {0} ist {0}", faktorA, faktorB, ergebnis);
}
}
}

Loading…
Cancel
Save