hash
ist die Zeichenfolge, die Sie drucken möchten, so sollten Sie nie seinen Wert wie folgt ändern:
hash = hash + 1; // this does not actually compile anyway.
Um zu verfolgen, wie oft Sie noch drucken müssen, benötigen Sie eine int
Variable. Wie Sie sehen können, ist tim
ein int
und es hat bereits die Benutzereingabe darin gespeichert. Lassen Sie uns tim
als unseren Zähler verwenden.
Jedes Mal, wenn Sie eine #
drucken, verringern Sie tim
um 1. Und im Zustand Schleife schreiben Sie tim > 0
. Dadurch wird die Schleife machen, so lange laufen, wie tim
größer als 0.
Scanner kb = new Scanner(System.in);
System.out.println("Enter number of # to be displayed: ");
int tim = kb.nextInt();
String hash = "#";
do {
System.out.println(hash);
tim--; // this is equivalent to tim = tim - 1;, in case you did not know
} while (tim > 0);
Aber ich glaube nicht, eine do-while
Schleife ist hier geeignet. Was ist, wenn der Benutzer 0 eingegeben hat? Eine #
wird weiterhin gedruckt. Das ist nicht gut, nicht wahr?
Ich schlage vor, eine for-Schleife hier:
Scanner kb = new Scanner(System.in);
System.out.println("Enter number of # to be displayed: ");
int tim = kb.nextInt();
String hash = "#";
for (int i = 0 ; i < tim ; i++) {
System.out.println(hash);
}
Sie Syntaxfehler haben, warum Sie nach innen setzen, während zu tun? Versuchen Sie Folgendes: do { System.out.println (Hash); Hash = Hash + 1; } while (hash.equals (tim)); –