<nav Home CS Aufgaben Aufgabe (in allen Sprachen) Contact


using System;

public class MyProgram
{
    public static void Main(string[] args)
    {
        // In diesem Programm werden zwei Zahlen miteinander vertauscht, ohne dass eine dritte Variable benötigt wird. Das bedeutet, es wird auch keine temporäre Hilfsvariable benötigt.
        // Zu Beginn werden die zwei Variablen a und b deklariert, die dazu dienen, die Werte der zwei Zahlen, welche vertauscht werden sollen, zu speichern.
        int a;
        int b;
        
        Console.WriteLine("Geben Sie die erste Zahl ein: ");
        a = (int) inputValue();
        Console.WriteLine("Geben Sie die zweite Zahl ein: ");
        b = (int) inputValue();
        Console.WriteLine("Die Zahlen werden nun vertauscht");
        
        // Im ersten Schritt wird in der Variable a der Wert der Summe von a und b gespeichert. Also a = a + b.
        a = a + b;
        
        // Vor dem zweiten Schritt ist der Wert der Summe von a und b, und der Wert von b bekannt. Mit diesen zwei Werten lässt sich auch der Wert von a berechnen, da a = (a + b) - b ist. Der Wert von a lässt sich nun der Variablen b zuweisen, in der Form b = a - b, was bedeutet b = (a + b) - b = a
        b = a - b;
        
        // Da in der Variablen a noch immer die Summe aus a und b (a + b) anstelle von b steht, muss die Summe um a vermindert werden.
        // Aufgrund des zweiten Schrittes steht der Wert von a in der Variablen b. Das weitere Vorgehen ist analog zum zweiten Schritt. Und es ist a = a - b = (a + b) - a = b.
        a = a - b;
        Console.WriteLine("Die neue erste Zahl ist jetzt: " + a);
        Console.WriteLine("Die neue zweite Zahl ist jetzt: " + b);
    }
    
    // .NET kann nur einzelne Zeichen oder ganze Zeilen aus der  Konsole lesen. 
    // Die folgende Funktion löst das Problem.
    private static double inputValue()
    {
        double result;
        while (!double.TryParse(Console.ReadLine(), out result));
        return result;
    }
}
        
        
akzeptieren ablehen

Diese Website verwendet Cookies und Zählpixel, um Ihnen die bestmögliche Nutzung dieser Website zu ermöglichen.Learn more about cookies sehen Sie auch Datenschutz