C# :: Aufgabe #181 :: Lösung #2

6 Lösungen Lösungen öffentlich
#181

Kleine Variablenspielerei

Anfänger - C# von kjaenke - 03.07.2017 um 15:05 Uhr
Schreibe ein Programm das zwei Zahlen entgegen nimmt und jeweils in eine Variable speichert.
Tausche die Werte der Variablen ohne weitere Variablen zu definieren.
Es sind im ganzen Programm nur die zwei vorher definierten Variablen erlaubt!

Viel Spaß :)
#2
vote_ok
von hollst (13980 Punkte) - 04.07.2017 um 09:59 Uhr
Quellcode ausblenden C#-Code
using System;
using static System.Console;

namespace zahlentausch_181  {

    class Program    {

        static void Main()        {
            int[] input = new int[2];

            do  {
                bool[] bo_input_ok = new bool[] { false, false };

                while (!bo_input_ok[0])                {
                    "Bitte zahl_1 eingeben: ".Message();
                    bo_input_ok[0] = int.TryParse(ReadLine(), out input[0]);
                }
                while (!bo_input_ok[1])                {
                    "Bitte zahl_2 eingeben: ".Message();
                    bo_input_ok[1] = int.TryParse(ReadLine(), out input[1]);
                }

                input = input.tausche();

                ("zahl_1: " + input[0].ToString() + Environment.NewLine + "zahl_2: " + input[1].ToString()).MessageLine();

            }   while (!("again? exit ESC".EndMessage().Key == ConsoleKey.Escape));
        }
    }

    public static class MyExtensions    {

        public static void Message(this string s) => Write(s);

        public static void MessageLine(this string s) => WriteLine(s); 

        public static ConsoleKeyInfo EndMessage(this string s)
        { s.MessageLine(); return ReadKey(true); }

        public static int[] tausche(this int[] input)        {
            int[] result = new int[2];
            input.CopyTo(result, 0);
            result[0] += result[1];
            result[1] = result[0] - result[1];
            result[0] -= result[1];
            return result;
        }
    }
}

Kommentare:

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

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