Drucken aus einer Schleife

Winz

Ich muss die Faktoren einer perfekten Zahl drucken. Hier ist der Kern meiner Hauptklasse:

ArrayList<Integer> perfNums = new ArrayList<>();
Scanner in = new Scanner(System.in);
System.out.print("Enter the upperbound: ");
upperbound = in.nextInt();
for (int i = 1; i <= upperbound; i++) {
     if (isPerfect(i)) { //boolean to check if number is a perfect number
        perfNums.add(i);
     }
}

System.out.println("Perfect numbers between 1 and " + upperbound + " are:");
for (int i = 0; i < perfNums.size(); i++) {
     System.out.print(perfNums.get(i) + " = ");
     printFactor((int)perfNums.get(i));
     System.out.println();
}

Hier ist die printFactor- Klasse.

private static void printFactor(int number){
    int factor = 1;
    while(factor < number){
        if (number%factor == 0) System.out.print(factor+ " + ");
        //I don't know how to print the + sign otherwise.
        factor++;
    }
}

Und hier ist eine Beispielausgabe:

Enter the upperbound: 10000
Perfect numbers between 1 and 10000 are:
6 = 1 + 2 + 3 + 
28 = 1 + 2 + 4 + 7 + 14 + 
496 = 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248 + 
8128 = 1 + 2 + 4 + 8 + 16 + 32 + 64 + 127 + 254 + 508 + 1016 + 2032 + 4064 + 

Ich habe das Wesentliche verstanden, aber ich habe mit einem Ausgabeproblem zu kämpfen. Aufgrund der Einschränkungen meines Online-Einreichungssystems muss meine Ausgabe den genauen Spezifikationen entsprechen.

Meine Frage ist, wie ich alle Faktoren meiner perfekten Zahl drucke, aber am Ende das + -Zeichen entferne. (z.B)6 = 1 + 2 + 3

Ich bin mir nicht sicher, wie viele Methoden aus einer while-Schleife gedruckt werden sollen. Wäre eine for-Schleife besser für meine Ziele? Oder gibt es alternative Methoden, um die Faktoren einer Zahl zu drucken?

khelwood

Die geringste Änderung, um dies zu beheben, könnte etwa so aussehen:

private static void printFactor(int number) 
    System.out.print(1);
    int factor = 2;
    while (factor<number) {
        if (number%factor == 0) System.out.print(" + " + factor);
        factor++;
    }
}

1 ist immer ein Faktor, daher können Sie diesen vor der Schleife drucken und dann +jedem nachfolgenden Faktor voranstellen .

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

RMarkdown-Untertitel aus einer Schleife drucken

Drucken mehrerer Benutzereingaben aus einer Schleife

Drucken Sie das Gegenteil einer Leiter in einer Schleife aus

Ausgabe / Drucken von 6 Zahlen pro Zeile aus einer Schleife

Erstellen einer Anweisung aus der While-Schleife und Drucken

Drucken aus Schleife innerhalb einer Funktion: andere Ausgabe

Aus einer for-Schleife in einen neuen Datenrahmen drucken

So drucken Sie Bilder aus dem Web in einer For-Schleife

Verwenden einer for-Schleife zum Drucken jedes Elements einer Liste aus einer externen Datei in Python

Drucken von Informationen einer Schleife

So drucken Sie Funktionen aus einer Schleife eines Arrays von Objekten in Java aus

Drucken aus dem Python-Konstruktor mit Variablen, die aus einer for-Schleife generiert wurden

Erstellen von ggplots aus einer Schleife (und Generieren der Dateien) ohne Drucken einer sichtbaren Ausgabe in RMarkdown

Drucken eines nummerierten assoziativen Arrays aus einer MySQLi-Abfrage in einer Schleife

So drucken Sie ausgewählte Werte aus einer Liste mit einer while-Schleife

Drucken aus einer Methode

Wie kann ich ein Ergebnis aus einer verschachtelten for-Schleife nur einmal drucken?

So drucken Sie eine bestimmte Nachricht aus, wenn innerhalb einer for-Schleife nichts übereinstimmt

Drucken Sie Text aus der while-Schleife in einer einzelnen Zeile in Python

Drucken Sie einen bestimmten Schlüssel in einer Python-Schleife aus

So drucken Sie die Häufigkeit jedes einzelnen Wortes aus einer Zeichenfolge mit for-Schleife in Python

So speichern Sie eine Ausgabe eines Arrays aus einer Schleife, ohne sie zu drucken

So drucken Sie alle Zeichenfolgen aus der angegebenen Anzahl mit einer verschachtelten Schleife in Python

So drucken Sie ein 2-D-Array im Matrixformat in einer While-Schleife aus

Wie erstelle ich einen Datenrahmen, anstatt nur eine Liste aus einer for-Schleife zu drucken?

Drucken nach einer Pause in einer for-Schleife

Drucken Sie den Wert dynamisch aus oder weisen Sie ihn HTML aus der Arrayliste in einer for-Schleife zu

Beim Versuch, eine dl-Referenz aus einer URL innerhalb einer Schleife zu drucken, wird eine leere Zeichenfolge angezeigt

Drucken und for-Schleife in einer Zeile

TOP Liste

  1. 1

    Wie aktualisiere ich ein Feld in einer Raumdatenbank mit einem Repository und einem Ansichtsmodell?

  2. 2

    Wie füge ich mehrere Spalten in einer Spalte mit derselben Tabelle in SQL Server zusammen?

  3. 3

    Wie kann man Gitterquadrate dazu bringen, die Farbe zu ändern?

  4. 4

    Ich kann nicht verstehen, wie man Go-Code in mehreren Dateien kompiliert

  5. 5

    Zählen Sie die Vorkommen jedes Werts in einem Tupel in Python

  6. 6

    Gibt es eine sauberere Möglichkeit, Konstruktorargumente und Instanzeigenschaften einer Klasse in Typescript zu definieren?

  7. 7

    So implementieren Sie Pushwoosh mit ionic 2

  8. 8

    Wie wird der Wert im Dropdown-Menü basierend auf den ausgewählten Daten / IDs angezeigt?

  9. 9

    Tomcat - Leiten Sie den alten Kontextstamm zum neuen Kontextstamm um

  10. 10

    Ändern Sie den Knotenpfad in das aktuelle Verzeichnis

  11. 11

    So erstellen Sie ein Array von Objekten aus zwei Arrays von Objekten mit einem gemeinsamen Schlüssel - JavaScript

  12. 12

    Rufen Sie die ID aus der Datagrid-Ansicht ab und zeigen Sie die Daten in Textfeldern einem anderen Formular an

  13. 13

    base js: Wie füge ich einem Objekt eine Eigenschaft auf die 'alte' Weise hinzu?

  14. 14

    Ersetze einen Teil einer Zeichenfolge durch eine Pandas-Spalte als Muster

  15. 15

    Blättern Sie auf Radio Click zur Abschnitts-ID

  16. 16

    CBCentralManager wird nach dem Verbinden neu gestartet

  17. 17

    Scherz, wie man eine Funktion verspottet, die von einer verspotteten Funktion zurückgegeben wird

  18. 18

    django-allauth Empfängersignal zum Hinzufügen einer Gruppenberechtigung zum Benutzer bei der Anmeldung

  19. 19

    Tic Tac Toe-Spiel im React-Reset-Button funktioniert nicht

  20. 20

    AQL: Teilweise Übereinstimmung in einer Reihe von Zeichenfolgen

  21. 21

    So summieren Sie die Werte zweier Tabellen und gruppieren sie nach Datum

heißlabel

Archiv