PCMasters Hardware Forum > Software > GFX, Webdesign und Programmierung > Seite 8 > Headfirst: 'Java' - Lösungen

Im PC Forum registrieren


Produktsuche
IDEALO-PRODUKT-SUCHE
idealo preisvergleich
PCM News & Reviews
Antwort
 
 
Alt 17.02.2010, 16:01
Benutzerbild von Vizjerai
Threadersteller
Vizjerai
 
Standard

Headfirst: 'Java' - Lösungen



Obwohl es sich um ein Buch handelt, denke ich trotzdem, dass es in dieses Forum mehr wahr genommen wird, als im Off-Topic und ja auch hier her passt!
Ich habe das buch Headfirst Java nun einen Tag und bin eigentlich sehr zufrieden mit dem Buch. Die Autoren verstehen es, einen trotzallem der trockenen Thematik an die Programmiersprache zu binden.

Nun gibt es ja einige Aufgaben in diesem Buch, die es zu lösen gilt.
Wie z.B. auf der Seite 13 ..
Recht unten gibt es einen Lückentext, den es gilt zu vervollständigen.
Nur leider gibt es, nicht so wie bei anderen "Rätseln", keine Auflösung dazu.

Mein komplettierter Code:
Code:
public class DooBee{
  public static void main (String[] args){
    int x = 1;
    while (x < 3){
      System.out.print("Doo");
      System.out.print("Bee");
      x=x-1;
      }
 
      if (x == 3){
        System.out.print("Do");
      }
   }
}
Ausgabe soll "DooBeeDooBeeDo" sein.
An sich ein leichter Syntax .. jedoch würde ich trotzdem gerne wissen, ob es auch stimmt.
Oder auf Seite 14 dieses "Bierzähl"-Programm () wo man herausfinden sollte, was an diesem Code nicht stimmt. (z.B. dass es keine Schleife gibt, welche den Umstand behandelt, wenn 'bierAnzahl <1' ist. Oder irre ich da?)
Auch diese "Pool"-Aufgabe auf Seite 24 verstehe ich nicht. Zumindest was den Aufbau der Schleifen angeht.

Ich hoffe, dass jemand das Buch kennt und mir bisschen auskunft geben kann.

Geändert von Vizjerai (17.02.2010 um 16:09 Uhr).
Alt Heute
Hardware Bot
Computer Informationen
 
Diese Werbung wird registrierten
Mitgliedern nicht angezeigt.
Werden Sie noch heute kostenlos Mitglied
auf PCMasters.de
Standard Weitere Informationen

 
Alt 17.02.2010, 16:07
Benutzerbild von incredible-olf
incredible-olf
 
Standard

Du solltest hinter System.out.print("Doo") und System.out.print("Doo") jeweils ein ; setzen. Dann sollte es stimmen.
 
Alt 17.02.2010, 16:11
Benutzerbild von Vizjerai
Threadersteller
Vizjerai
 
Standard

Zitat:
Zitat von incredible-olf Beitrag anzeigen
Du solltest hinter System.out.print("Doo") und System.out.print("Doo") jeweils ein ; setzen. Dann sollte es stimmen.
Die waren ohnehin vorhanden, hab sie nur aus versehen ausgelassen. Danke trotzdem! Vorallem das mit dieser Pool Aufgabe würde mich interessieren!
 
Alt 17.02.2010, 16:24
pixelflat
 
Standard

Wie wärs wenn du einfach mal kurz die Aufgabe beschreibst? Das Buch hat vermutlich kaum jemand und ohne Text kann dir keiner sagen was du tun sollst. Überprüfen ob der Code richtig oder falsch ist, sollte doch das einfachste überhaupt sein? IDE starten, rein schreiben, starten...

In deinem Code-Beispiel hast du einen logischen Fehler: du setzt x auf den Wert 1 und überprüfst in einer Schleife ob x kleiner 3 ist. Allerdings verringerst du dann den Wert von x (auf 0, -1, -2...) => Endlosschleife. Das hättest du beim ausprobieren ziemlich schnell festgestellt.

Am Ende muss du das "Do" auch nicht in eine if-Anweisung setzen, weil der Teil sowieso immer da stehen soll. Der Wert von x ist dabei egal und es wird ja nach der Schleife ausgeführt.
 
Alt 17.02.2010, 16:38
Benutzerbild von Vizjerai
Threadersteller
Vizjerai
 
Standard

Zitat:
Zitat von pixelflat Beitrag anzeigen
Wie wärs wenn du einfach mal kurz die Aufgabe beschreibst? Das Buch hat vermutlich kaum jemand und ohne Text kann dir keiner sagen was du tun sollst. Überprüfen ob der Code richtig oder falsch ist, sollte doch das einfachste überhaupt sein? IDE starten, rein schreiben, starten...

In deinem Code-Beispiel hast du einen logischen Fehler: du setzt x auf den Wert 1 und überprüfst in einer Schleife ob x kleiner 3 ist. Allerdings verringerst du dann den Wert von x (auf 0, -1, -2...) => Endlosschleife. Das hättest du beim ausprobieren ziemlich schnell festgestellt.

Am Ende muss du das "Do" auch nicht in eine if-Anweisung setzen, weil der Teil sowieso immer da stehen soll. Der Wert von x ist dabei egal und es wird ja nach der Schleife ausgeführt.
Ich habe lediglich das eingefügt, was dick geschrieben wurde. bezüglich der 'x < 3' Schleife obliegt das wiederum einem Schreibfehler von mir!
Restliches, auch deine kritisierte deklaration der variable x am Ende ist vom Buch so vorgegeben.

Code:
class PoolPuzzleEins {
  public static void main(String[] args) {
     int x = 0;
 
   while (x < 4) {
 
   System.out.print("da");
   if (x < 1 ) {
      System.out.print(" ");
 
  }
  System.out.print("s");
 
  if ( x < 1) {
      System.out.print("kind");
     x = x + 2;
 
 }
 if (x == 1) {
     System.out.print("itzend");
 
 }
 if (x < 1); {
   System.out.print("agt");
 }
 System.out.println(" ");
 
 x = x + 1;
 
}
}
}

Das ist der Code aus diesem "pool" beispiel .. die dick geschriebenen "Befehle" sind jene, welche vorgegeben sind und wie bei einem Lückentext eintragen muss. Verstehe nur leider nicht den Sinn hinter der wirren Anordnung der Schleifen.


PS.: ausgabe soll übrigens:

Code:
da sagt
dasitzend
das kind

Danke,


viZ

Geändert von Vizjerai (17.02.2010 um 16:47 Uhr).
 
Alt 17.02.2010, 16:51
pixelflat
 
Standard

Als erstes solltest du dir angewöhnen Quelltext richtig einzurücken. Auch ist für Anfänger der ] nicht wirklich geeignet. Schreib lieber die geschweiften Klammern { } in eine neue Zeile... Eclipse kann Quelltext übrigens automatisch richtig einrücken.

Welche Anordnung der Schleifen meinst du? Es gibt nur eine. Alles andere sind Selektionen (if, switch) innerhalb der Iteration (Schleife). Die Ausgabe von dem Quelltext wäre:
Code:
da skindagt 
dasagt
Scheint so nicht ganz richtig zu sein. Vermutlich musst du irgendeinen Satz zusammen basteln...
hardware forum Neue Frage stellen?
Kurze Zusammenfassung der Frage:
Bitte wählen Sie eine Kategorie:
Mailadresse:
Ihre Frage:
Ihre Frage wird als Gast gespeichert. Sollte eine Antwort im Forum erfolgen, bekommen Sie diese per Email zugeschickt.


Zufällige Frage
Um auf dieses Thema zu ANTWORTEN
bitte sich zuerst » hier kostenlos registrieren!!

Antwort

Tags: , ,

Ähnliche Tags: , ,


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Kann mich nicht entscheiden: Java oder C++ ? VirusX GFX, Webdesign und Programmierung 5 03.10.2011 17:24
Java setz sich nach Browserstart zurück noobichen Anwendungssoftware 2 01.04.2008 10:25
Java mit IE wizo666 Anwendungssoftware 1 21.03.2008 23:06
Java geht mit Internet Explorer nicht ToyotaSupra Anwendungssoftware 0 09.02.2008 14:26


Sie betrachten gerade: Headfirst: 'Java' - Lösungen


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:55 Uhr.



Im PC Forum registrieren