Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Javakurs/Übungsaufgaben/Cowsay/Musterloesung: Unterschied zwischen den Versionen

(Lösung Cowsay)
(Zusatz: Breite der Sprechblase anpassen (mit for-Schleife))
Zeile 24: Zeile 24:
 
== Kommentare ==
 
== Kommentare ==
 
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)
 
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)
 +
 +
'''Theresa:''' Noch hübscher wird es, wenn man die obere und untere Begrenzung der Sprechblase an die Textlänge anpasst. Dafür braucht man allerdings eine Schleife, die erst in Vorlesung 2 behandelt wird.
 +
 +
<code> 
 +
public class CowSay {
 +
    public static void main(String[] args) {
 +
   
 +
    String message = "Java rocks!";
 +
    String upperBubble = "_____________"; // obere Begrenzung der Sprechblase
 +
    String lowerBubble = "-------------"; // untere Begrenzung der Sprechblase
 +
   
 +
    if (args.length > 0) {
 +
        message = args[0];
 +
        upperBubble = "";
 +
        lowerBubble = "";
 +
       
 +
        //für jeden Buchstaben, den args[0] hat: Verlängere upperBubble und lowerBubble um ein Zeichen
 +
        for (int i = 0; i<= args[0].length(); i++) {
 +
            upperBubble = upperBubble + "_";
 +
            lowerBubble = lowerBubble + "-";
 +
        }
 +
    }
 +
   
 +
    System.out.println(" " + upperBubble);
 +
    System.out.println("< " + message + "! >");
 +
    System.out.println(" " + lowerBubble);
 +
    System.out.println("      \\  ^__^");
 +
    System.out.println("        \\  (oo)\\_______");
 +
    System.out.println("          (__)\\      )\\/\\");
 +
    System.out.println("              ||----w |");
 +
    System.out.println("              ||    ||");
 +
    }
 +
}
 +
</code>

Version vom 6. März 2012, 15:10 Uhr

Hinweis: Die Musterlösung kann von eurer Lösung abweichen, da es immer mehrere Varianten gibt ein Problem zu lösen. Im Zweifelsfall Fragt einen Tutor.

Lösung Cowsay

 public class Cowsay {
     public static void main(String[] args){
         String message = "Java rocks!";
         if(args.length > 0){
             message = args[0];
         }
   
         System.out.println(" _____________");
         System.out.println("< " + message + " >");
         System.out.println(" -------------");
         System.out.println("        \\   ^__^");
         System.out.println("         \\  (oo)\\________");
         System.out.println("            (__)\\        )\\/\\");
         System.out.println("                ||-----w |");
         System.out.println("                ||      ||");
     }
 }

Kommentare

Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)

Theresa: Noch hübscher wird es, wenn man die obere und untere Begrenzung der Sprechblase an die Textlänge anpasst. Dafür braucht man allerdings eine Schleife, die erst in Vorlesung 2 behandelt wird.

public class CowSay {
   public static void main(String[] args) {
   
   String message = "Java rocks!";
   String upperBubble = "_____________"; // obere Begrenzung der Sprechblase
   String lowerBubble = "-------------"; // untere Begrenzung der Sprechblase
   
   if (args.length > 0) {
       message = args[0];
       upperBubble = "";
       lowerBubble = "";
       
       //für jeden Buchstaben, den args[0] hat: Verlängere upperBubble und lowerBubble um ein Zeichen
       for (int i = 0; i<= args[0].length(); i++) {
           upperBubble = upperBubble + "_";
           lowerBubble = lowerBubble + "-";
       }
   }
   
   System.out.println(" " + upperBubble);
   System.out.println("< " + message + "! >");
   System.out.println(" " + lowerBubble);
   System.out.println("       \\   ^__^");
   System.out.println("        \\  (oo)\\_______");
   System.out.println("           (__)\\       )\\/\\");
   System.out.println("               ||----w |");
   System.out.println("               ||     ||");
   }
}