""fahrendes Auto""

Baboon1986

Neues Mitglied
Hallo erstmal, bin der Baboon:)

habe mich vor kurzem entschlossen, mal in die programmier Welt reinzuschnuppern und dachte ich fang mal mit java an.

mein wissens Stand ...wenn man von einer Skala von 0 bis 10 geht , ist = 0,1:D

So warum ich euch jetzt mit meiner anwesenheit Nerve ist folgende ! um Java schneller zu verstehen, hab ich mir alte -übungsaufgaben besorgt , das problem ist, ich finde nirgendswo lösungen oder wenigstens kleine andenkstöschen, die mir zur lösung behilflich sein könnten :(

Jetzt wollte ich euch Fragen ? Ob ihr mir bei dieser aufgabe behilflich sein könntet? Oder wenigstens kleine Schokostückchen zuwerfen könntet, das ich denn Kuchen selbst zuende Backe :)

Hab hier eine aufgabe, in der ich ein "fahrendes Auto " interakrtiv in Java Simulieren soll.....

Die Frage Stellung ist wie folgt = Schreiben Sie ein Java-Programm, dass ein „fahrendes Auto“ auf einer Straße am Bildschirm darstellt. Das Auto soll durch a Zeichen dargestellt werden. Ein Auto mit einer Länge von a=3 Zeichen kann z.B. durch „0-0“ dargestellt werden. Die Straße soll eine Länge von s Zeichen haben. Der Straßenbelag kann z.B. durch das Zeichen „_“ dargestellt werden. An der Stelle, an der sich das Auto befindet, wird das Auto, ansonsten der Straßenbelag dargestellt. Zu Beginn soll das Auto auf der linken Seite der Straße wie folgt dargestellt werden:
0-0_________________

Anschließend soll die Straße mit dem Auto iteraktiv, d.h. wiederholend, dargestellt werden. In jeder Iteraktion (Wiederholung) soll sich die Position des Autos um den Wert Eins nach rechts verschieben, bis das Auto das rechte Ende der Straße erreicht hat. Es soll sich also folgende Ausgabe ergeben:
0-0_________________
_0-0________________
__0-0_______________
___0-0______________
____0-0_____________
_____0-0____________
______0-0___________
_______0-0__________
________0-0_________
_________0-0________
__________0-0_______
___________0-0______
____________0-0_____
_____________0-0____
______________0-0___
_______________0-0__
________________0-0_
_________________0-0

So hab ich angefangen mit Eclipse=

public class FahrendesAuto {


public static void main(String[] args) {

for (int i=0; i<=1; i++){
for (int j=1; j=i; j++)

System.out.print("0-0__________");
System.out.println();{
}}}

mein ergebnis ist = 0-0__________ ,


......jetzt fehlen mir aber einige zeilen und ich weiss wirklich net wie ich weiter machen soll?:noe:

Über Hilfe würde ich mich sehr Freuen:)


MfG Baboon
 
G

Gast2

Gast
Hi erstmal

1) Das was du da versuchst ist viel zu komplex für die erste Aufgabe
2) Mache ein Tutorial durch. Da gibts jede Menge oder kauf dir ein Buch (z.B: Java von Kopf bis Fuß) denn dort werden Grundlagen auch erklärt und man fängt wirklich bei 0 an. Stück für Stück erweitert sich dann der Kenntnisstand und man ha tauch schnell Erfolge.
3) Wenn du hier Fragen postest dann bitte mit dem Quellcode (Idealerweise kompilierfähig) und in Java Tags!

Gruß Florian
 

Baboon1986

Neues Mitglied
1) Das was du da versuchst ist viel zu komplex für die erste Aufgabe

Ist net ganz meine erste Aufgabe , hab schon ein paar erledigt , da gint es aber eher um Addiern multiplizieren usw....aber gut, ich sehe schon, die Aufgabe scheint wirklich ein wenig zu komplex für mein wissenstand zu sein :D

2) Mache ein Tutorial durch. Da gibts jede Menge oder kauf dir ein Buch (z.B: Java von Kopf bis Fuß) denn dort werden Grundlagen auch erklärt und man fängt wirklich bei 0 an. Stück für Stück erweitert sich dann der Kenntnisstand und man ha tauch schnell Erfolge.

Danke für den Tipp:)

3) Wenn du hier Fragen postest dann bitte mit dem Quellcode (Idealerweise kompilierfähig) und in Java Tags!

Quellcode ? ???:L .... Java Tags!???:L ...Das sagt mir jetzt nicht wirklich was, aber beim nächsten mal werd ich es beachten :)


gruß Baboon
 
Zuletzt bearbeitet:

nieselfriem

Bekanntes Mitglied
Hi hi,
damit ist folgendes gemeint
Code:
[code=Java]System.out.println("Hallo");
[/CODE]

ergibt dann:
Java:
System.out.println("Hallo");
Somit kann man im Forum deinen Quelltext besser lesen.

Grüße niesel
 
M

MiDniGG

Gast
Um Dir trotz allem mal etwas zu helfen:

Java:
public static void main(String[] args) {

for (int i=0; i<=1; i++){
for (int j=1; j=i; j++)

System.out.print("0-0__________");
System.out.println();{
}}}

Code anständig formatieren, sonst checkt keiner mehr durch. }}} ist unschön:

Java:
public static void main(String[] args) {
     for (int i=0; i<=1; i++) {
          for (int j=1; j=i; j++) {
               System.out.print("0-0__________");
          }
          System.out.println();{
     }
}

So. Was Du momentan machst ist Folgendes:
Du erstellst i mit dem Wert 0. Anschließend erhöhst Du i bei jedem Schleifendurchlauf so lang, wie es kleiner oder gleich 1 ist. Also einmal.
=> Du läufst 2 mal durch die erste Schleife.
Die zweiten Schleife hat keine Abbruchbedingung. Nur eine Zuweisung. Ich bin mir sicher, dass das nicht funktioniert... :)

Jetzt überlegen wir mal, was wir brauchen.

1.) Ein Auto mit 3 Zeichen: 0-0
2.) Straße mit Länge S -> int s = 10;
3.) Aktuelle Position des Autos -> int carPos = 0;

So. Jetzt müssen wir die aktuelle Position des Autos bei jedem Schleifendurchlauf um eins erhöhen.

Java:
for(int carPos = 0; carPos <= s; carPos++) {

}

Anschließens müssen wir schauen, an welcher Position das Auto ist.
Bspw. an Position 5.
Dann müssen wir erst 5 Straßenteile ausgeben (for-Schleife) System.out.print("_"); dann das Auto und danach den Rest der Straße (for-Schleife). Also s-carPos oft.
Am Ende noch einen Zeilenumbruch (System.out.println(); reicht hier).

Ich hoffe Du kannst damit was anfangen. Ich könnte Dir natürlich auch die 10 Zeilen Code hier hinschreiben. Aber das ist ja nicht Sinn der Sache! ;-)
 

hackenjoe

Mitglied
Also ich hätte es jetzt auf die Schnelle so gemacht:

Java:
public class Test {

    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int Straße = 10;
        String Auto = "0-0";
        
        for (int carPosition = 0; carPosition <= Straße; carPosition++)
        {
            switch (carPosition)
            {
                case 0: System.out.println(Auto + "__________");
                case 1: System.out.println("___" + Auto + "________");
                case 2: System.out.println("______" + Auto + "_____");
                    
                    //usw...
            }
        }
    }
}
 
P

Pippl

Gast
Also ich hätte es jetzt auf die Schnelle so gemacht:

Java:
public class Test {

    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        int Straße = 10;
        String Auto = "0-0";
        
        for (int carPosition = 0; carPosition <= Straße; carPosition++)
        {
            switch (carPosition)
            {
                case 0: System.out.println(Auto + "__________");
                case 1: System.out.println("___" + Auto + "________");
                case 2: System.out.println("______" + Auto + "_____");
                    
                    //usw...
            }
        }
    }
}

variablen gehören klein und beim switch fehlen die breaks ;-)
 

hackenjoe

Mitglied
Ich habe das in weniger als 4 Minuten kurz geschrieben, sicher das Variablen klein gehören und die breaks fehlen :D
Dann hätte man aber auch noch eine "Extra" Methode dafür anlegen können, damit es schöner aussieht.
 
G

Gast2

Gast
Oder gleich ohne switch (ungetestet):

Java:
public class CarDrivingTest {

    public static void main(String[] args) {
        int street = 10;
        String car = "0-0";
        
        for (int carPosition = 0; carPosition <= street; carPosition++)
        {
            for (int i=0; i<carPosition; i++) {
                System.out.print("_");
            }
            System.out.print(car);
            for (int i=carPosition+1; i<= street; i++) {
                System.out.print("_");
            }
            System.out.println("");
        }
    }
}

PS: Variablen auf Englisch und klein!

[EDIT]Doch getestet mit Output:
Code:
0-0__________
_0-0_________
__0-0________
___0-0_______
____0-0______
_____0-0_____
______0-0____
_______0-0___
________0-0__
_________0-0_
__________0-0
[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
G

Gast2

Gast
Gern geschehen ^^

@TO: Mach trotzdem besser eins der vielen Tutorials oder Bücher, denn auf Dauer wird das mit Aufgaben ohne Lösung ätzend!
 

Ähnliche Java Themen

Neue Themen


Oben