power-poler
Goto Top

Java while Schleife Problem

Hallo
Versuche mich gerade durch ein Java tutorial zu quelen.
Hänge jetzt an den "Hausaufgaben"

Und zwar geht es darum, zwischen 2 Wörtern, die eingegeben werden können, soviel Punkte zu erzeugen, das es insgesamt 30 Zeichen sind.
Das ganze auf einer Zeile.
Sobald ich aber versuche eine while Schleife in ein System.out.println zu packen, bekomme ich einen error.
Ich kann mir schon vorstellen, das ich irgendwo einen Denkfehler mache, ich komme aber absolut nicht drauf wo.
Könnte jetzt natürlich auch einfach weitermachen mit dem Tutorial, aber das ist ja nicht sin, der Sache, es geht ja um die Problemlösung.

Hier die Aufgabenstellung (Aufgabe 3):
http://www.gailer-net.de/tutorials/java5/Notes/chap15/progExercises15.h ...
Hier mein Lösungsansatz
import java.util.Scanner;
class BeispielSchleife
{
	public static void main (Stringargs)
		{
			Scanner scan = new Scanner (System.in);
			String String1;
			String String2;
			int laenge , zaehler , laenge2;
			zaehler = 1;
			System.out.println("Gegen Sie das erste Wort ein:");  
			String1 = scan.nextLine();
			laenge = String1.length();
			System.out.println("Geben Sie das zweite Wort ein:");  
			String2 = scan.nextLine();
			laenge2 = String2.length();
		        laenge = laenge + laenge2;
			laenge = 30 - laenge;
			//System.out.println(String1); 
			System.out.println(
			while (zaehler <= laenge)
			{
				System.out.println(".");  
				zaehler = zaehler + 1; 
			});
			//System.out.println(String2);
		
			
			System.out.println("Schleife beendet");  
		}
	}
So wolte ich es ursprünglisch lösen:
                System.out.println(String1 + 
			while (zaehler <= laenge)
			{
				System.out.println(".");  
				zaehler = zaehler + 1; 
			}
			+ String2);

Schonmal danke für eure Hilfe
Mfg
Power-Poler

Content-Key: 188766

Url: https://administrator.de/contentid/188766

Printed on: April 24, 2024 at 01:04 o'clock

Mitglied: 76109
76109 Jul 29, 2012 at 13:04:03 (UTC)
Goto Top
Hallo Power-Poler!

Eine Sub oder Function erwartet vorgebenene Parameter und keinen Programmcode, mit dem sie absolut nix anfangen kann. Das (+) hingegen ist nur ein Verkettungsoperator, mit dem Strings zusammengefügt werden können und somit einen kompletten String ergeben und übergeben werden.

Java ist nicht mein Gebiet, müsste aber sinngemäß in etwa so gehen:
laenge = String1.length() + String2.length();

For (i=laenge; i <= 30; i++)
{
   String1 = String1 + "."  
{

System.out.println(String1 + String2); 

Gruß Dieter
Member: Power-Poler
Power-Poler Jul 29, 2012 updated at 13:11:05 (UTC)
Goto Top
Ok, danke so funktioniert es.
Aber ich würde gerne noch wissen, wie das gemeint ist:
"Hinweis: Verwenden Sie System.out.print(".") innerhalb einer Schleife, um die Punkte auszugeben."
So erhalte ich nämlich alle punkte in einer neuen Zeile, nicht in einer.
Also wenn ich es so mache wie in dem Hinweis.
Mitglied: 76109
76109 Jul 29, 2012 updated at 13:13:33 (UTC)
Goto Top
Hallo Power-Poler!

Damit ist gemeint, jeden Punkt einzeln auszugeben. Demnach dann so:
laenge =  String1.length() + String2.length();

System.out.println(String1); 

For (i=laenge; i <= 30; i++)
{
  System.out.println(".");   
{

System.out.println(String2); 

Gruß Dieter
Member: Power-Poler
Power-Poler Jul 29, 2012 at 13:46:53 (UTC)
Goto Top
Dann habe ich aber doch 30 Zeilen untereinander, oder?
Die Punkte und die 2 Wörter sollen aber in einer Zeile stehen.
Mitglied: 76109
76109 Jul 29, 2012 at 13:54:52 (UTC)
Goto Top
Hallo Power-Poler!

Sicherlich gibt's in Java noch andere Print-Funktionen, wie etwa Prints (String), Printc (Char)... Also ohne automatischen Zeilenumbruch am Ende?

Gruß Dieter
Member: Power-Poler
Power-Poler Jul 29, 2012 at 14:02:55 (UTC)
Goto Top
Das kann sein, aber wenn ich mich nicht irre, wurde es in dem tutorial bis dorthin noch nicht behandelt, und daher wird das auch nicht verlangt sein.
Mitglied: 76109
76109 Jul 29, 2012 at 14:22:08 (UTC)
Goto Top
Hallo Power-Poler!

Ja, und hast Du es schon mit 'System.out.print(".")' versucht?

Ansonsten musst Du warten, bis ein Java-Kundiger auf Deinen Thread aufmerksam wirdface-wink


Gruß Dieter
Member: Power-Poler
Power-Poler Jul 29, 2012 at 15:05:36 (UTC)
Goto Top
Danke, das war die Lösung, jetzt weiß ich auch endlich für was das "ln" steht.
Neue Zeile nach dieser, oder so ähnlich, zumindest sieht es so aus.