Programm Beschreibung

Kydo

Neues Mitglied
Moin leute bin nen ziemlicher anfänger was programieren angeht und sollte für meine lehrerin ein programm mit einer while schleife erstellen wie würdet ihr das angehängte programm beschreiben so dass es professionell klingt aber leicht verständlich ist weil ich glaube wenn ich das in meinen worten mache kommt das übelst lost rüber (einfach einmal den programm ablauf was da passiert in euren worten beschreiben danke)


Javascript:
import java.util.Scanner;


public class Quersumme {

  public static void main(String[] args) {
    
    
    int Zahl = 0;
    int Quersumme  = 0;
    
    Scanner sc = new Scanner(System.in);
    
    System.out.printf("Geben sie ihre Zahl ein: ");
    Zahl = sc.nextInt();
    
    sc.close();
    
    while (Zahl != 0){
      Quersumme = Zahl % 10 + Quersumme;
      Zahl = Zahl / 10;
    }
     int zahl = Zahl;
     System.out.printf("Die Quersumme von %d ergibt %d", zahl, Quersumme);
  }
}
 
du kannst mehr system .out println einfügen un das programm durchlaufen lassen und anhand des outputs erklären was wo passiert und den sc zu scanner umbenennen ... was willst du da proffessionell erklären ?

wenn du die system out printlns eingefügt hast wird dir auch auffallen dass dein ding nicht funktioniert

Geben sie ihre Zahl ein: 12345
Die Quersumme von 0 ergibt 15
 
Du hast im anderen Thread doch schon erste Hinweise bekommen. Das mit dem als Code posten hast Du aufgegriffen (Danke dafür), aber die ganzen anderen Punkte scheinst Du noch nicht zu beachten:

a) Beschreibe es doch erst einmal selbst - dann kann man Dich gerne verbessern.
b) Scanner auf System.in werden nicht geschlossen.
c) Funktionalität des Programms testen! Das dürfte noch nicht das machen, was Du willst.
 
Moin leute bin nen ziemlicher anfänger was programieren angeht und sollte für meine lehrerin ein programm mit einer while schleife erstellen wie würdet ihr das angehängte programm beschreiben so dass es professionell klingt aber leicht verständlich ist weil ich glaube wenn ich das in meinen worten mache kommt das übelst lost rüber (einfach einmal den programm ablauf was da passiert in euren worten beschreiben danke)
  1. Wenn Du Deine Beschreibung auch unter Vernachlässigung von Großschreibung und Interpunktion verfasst, kannst Du schreiben, was Du willst: "übelst lost".
  2. Du bist Anfänger, warum willst Du dann professionell klingen?
Noch ein paar Worte zur Ergänzung: den ersten Punkt nicht falsch verstehen, es geht nicht um Rechtschreibung. Hingerotzte Wortfolgen lassen erkennen, dass die Leser (Lehrerin) dem Verfasser (Dir) sonst wo vorbeigehen. Das Gleiche gilt für Code. Es geht nicht nur darum, verständlichen Code zu schreiben, er sollte auch gewissen ästhetischen Ansprüchen genügen.

Dazu gehört dann z. B. auch, dass man in Java die Namen von Variablen, Parametern und Methoden in lowerCamelCase schreibt, einheitlich und sinnvoll Weißraum einfügt oder auf einheitliche Einrückungen achtet (vgl. Zeilen 23 und 24 mit dem Rest).

Gut ist es, dass Du Bezeichner gewählt hast, die einen Sinn ergeben und nicht einfach irgendwelche Buchstaben verwendet hast. Weniger gut, sind gleichlautende Bezeichner (Zahl und zahl).

Warum definierst Du die beiden Variablen am Beginn der Methode? Variablen sollte man immer dort einführen, wo sie gebraucht werden. Für den Scanner bräuchtest Du gar keine Variable, weil Du ihn nur einmal verwendest. Hier mal neu formatiert und mit ein paar Kommentaren angereichert:

Java:
import java.util.Scanner;

public class Quersumme {

  public static void main(String[] args) {
    /* Eingabe */
    Scanner sc = new Scanner(System.in);
    System.out.print("Geben Sie Ihre Zahl ein: "); // Anreden gross; printf ist hier nicht notwendig
    int zahl = sc.nextInt();
    
    /* Berechnung der Quersumme */
    int quersumme = 0;                       // doppeltes Leerzeichen vor '=' entfernt
    while (zahl != 0) {                      // Leerzeichen nach der schliessenden runden Klammer eingefuegt
      quersumme = quersumme + zahl % 10;     // Operanden vertauscht, weil es so ueblich ist
      zahl = zahl / 10; 
    }
    
    /* Ausgabe (wg. Fehler nicht enthalten) */
  }  
}
Wenn Du die Kommentare rauslöschst, sieht der Code gleich harmonischer aus. Fehler habe ich nicht behoben, das überlasse ich Dir.
 

Zurück
Oben