C# :: Aufgabe #249 :: Lösung #2
3 Lösungen

#249
Taschenrechner in einer Konsole
Fortgeschrittener - C#
von Gelöschte Person
- 30.03.2019 um 19:29 Uhr
Programmiere einen Taschenrechner der folgende Rechenarten kann:
Plus
Minus
Mal
Geteilt
Wurzel
Hoch
Prozent
Quersumme
Plus
Minus
Mal
Geteilt
Wurzel
Hoch
Prozent
Quersumme
#2

von PhiMo (90 Punkte)
- 08.09.2019 um 12:30 Uhr

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TrainYourProgrammer___Taschenrechner { class Program { static void Main(string[] args) { try { #region Variablen anlegen double dWert1; double dWert2; string sRechenoperation; bool bEingabeOK = false; #endregion #region Einlesen do { Console.WriteLine("Wert 1 = "); bEingabeOK = double.TryParse(Console.ReadLine(), out dWert1); Console.WriteLine("Wert 2 = "); bEingabeOK = double.TryParse(Console.ReadLine(), out dWert2); Console.WriteLine("\nWelche Rechenoperation soll durchgeführt werden? "); Console.WriteLine("1 - Addition \n2 - Subtraktion \n3 - Multiplikation \n4 - Division \n5 - Wurzelziehen \n6 - Potenzieren \n7 - Prozentrechnung \n8 - Quersumme "); sRechenoperation = Console.ReadLine(); Console.WriteLine("\n"); switch (sRechenoperation) { #region Addition case "1": case "A": case "a": double dSumme = dWert1 + dWert2; Console.WriteLine("Summe = " + dSumme); break; #endregion #region Subtraktion case "2": case "S": case "s": double dDifferenz; if (dWert1 > dWert2) { dDifferenz = dWert1 - dWert2; } else { dDifferenz = dWert2 - dWert1; } Console.WriteLine("Differenz = " + dDifferenz); break; #endregion #region Multiplikation case "3": case "M": case "m": double dProdukt = dWert1 * dWert2; Console.WriteLine("Produkt = " + dProdukt); break; #endregion #region Division case "4": case "D": case "d": double dQuotient; if (dWert1 > dWert2) { dQuotient = dWert1 / dWert2; } else { dQuotient = dWert2 / dWert1; } Console.WriteLine("Quotient = " + dQuotient); break; #endregion #region Wurzelziehen case "5": case "W": case "w": double dWurzelZ1 = Math.Sqrt(dWert1); double dWurzelZ2 = Math.Sqrt(dWert2); Console.WriteLine("Wurzel Wert 1 = " + dWurzelZ1 + "\nWurzel Wert 2 = " + dWurzelZ2); break; #endregion #region Potenzieren case "6": case "P": case "p": double dPotenz; if (dWert1 > dWert2) { dPotenz = Math.Pow(dWert1, dWert2); } else { dPotenz = Math.Pow(dWert2, dWert1); } Console.WriteLine("Potenz = " + dPotenz); break; #endregion #region Prozentrechnen case "7": case "Pr": case "pr": double dProzent; if (dWert1 > dWert2) { dProzent = (dWert2 * 100) / dWert1; Console.WriteLine("Prozent = " + dProzent + " % von " + dWert1); } else { dProzent = (dWert1 * 100) / dWert2; Console.WriteLine("Prozent = " + dProzent + " % von " + dWert2); } break; #endregion #region Quersumme case "8": case "Q": case "q": double dErgebnis1 = Quersumme(dWert1); double dErgebnis2 = Quersumme(dWert2); Console.WriteLine("Quersumme von Wert 1 = " + dErgebnis1 + "\nQuersumme von Wert 2 = " + dErgebnis2); break; #endregion } } while (!bEingabeOK); #endregion } catch (Exception e) { Console.WriteLine("FEHLER!" + e.Message); } } static public double Quersumme (double dZahl) { string sNummern = dZahl.ToString(); dZahl = 0; List<double> ListeTeile = new List<double>(); foreach (char ch in sNummern) { ListeTeile.Add(Convert.ToInt32(ch.ToString())); } foreach (int i in ListeTeile) { dZahl = dZahl + i; } return dZahl; } } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1