function main() {
 
    // Für die Zahl, von der die Quersumme berechnet, werden soll, wird die Variable zahl deklariert.
    var zahl;
    
    // Für das Ergebnis und Zwischenwerte der Quersumme wird die Variable quersumme deklariert.
    var quersumme;
    
    // Die Variable r ist eine Hilfsvariable, die dazu dient, die einzelnen Ziffern der mehrstelligen Zahl zwischenzuspeichern.
    var r;
    
    // Die Variable exit sorgt dafür, dass die Schleife beendet wird, wenn die Quersumme einstellig geworden ist.
    var exit;
    
    window.alert("Geben Sie ein Zahl, die größer als 10 ist, ein: ");
    zahl = Number(window.prompt('Enter a value for zahl'));
    
    // Es ist auch möglich, Quersummen von negativen Zahlen zu berechnen.  Dazu wird hier die boolesche Variable negativ deklariert und mit dem Wert false initialisiert.
    var negativ;
    
    negativ = false;
    
    // In der Fallunterscheidung wird geprüft, ob die eingegebene Zahl kleiner als 0 ist, falls ja, wird der Wert der Variable negativ auf true gesetzt und die eingegebene Zahl mit -1 multipliziert. Die Zahl ist dann positiv, nach der Berechnung der Quersumme wird das Ergebnis später wieder mit -1 multipliziert.
    if (zahl < 0) {
        negativ = true;
        zahl = zahl * -1;
    }
    exit = false;
    while (zahl >= 10 && exit == false) {
        
        // Ab hier beginnt die eigentliche Berechnung.
        quersumme = 0;
        while (zahl > 0) {
            
            // Solange die Variable zahl größer als 0 ist, wird die letzte Stelle der Zahl abgeschnitten und in der Variable r gespeichert.
            r = zahl % 10;
            
            // Die Zahl wird durch 10 geteilt, da im Schritte vorher die letzte Stelle gespeichert wurde.
            zahl = (double) zahl / 10;
            
            // Jetzt werden die Ziffern der Zahl schrittweise addiert.
            quersumme = quersumme + r;
        }
        if (quersumme >= 10) {
            zahl = quersumme;
        } else {
            
            // Im Fall, dass die berechnete Quersumme größer als 10 ist, das bedeutet, die Quersumme ist nicht einstellig, wird die Berechnung erneut durchlaufen, aber diesmal mit der gefundenen Quersumme als Startwert.
            exit = true;
        }
    }
    window.alert("Die einstellige Quersumme der gebenen Zahl ist: ");
    
    // Hier wird geprüft, ob die ursprünglich Zahl negativ war, falls ja, wird die berechnete Quersumme mit -1 multipliziert.
    if (negativ) {
        quersumme = quersumme * -1;
    }
    window.alert(quersumme);
}
        
        
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