Δημοσιεύτηκε: 26 Μαρ 2012, 22:00
από parenthesis
Μόλις πριν μια βδομάδα ξεκίνησα να μαθαίνω java και έχω σχεδόν τελειώσει με τα βασικά, οπότε ήρθα κι εγώ να τσεκάρω το thread για καμία άσκηση.
Επέκτεινα λίγο τον κώδικα του clepto, ώστε να δέχεται είσοδο από γραμμή εντολών και να τυπώνει ένα "κούφιο" παραλληλόγραμμο. :P

Κώδικας: Επιλογή όλων
public class Asteriskoi {

   public static void main(String[] args) {
      int x;
      int y;
      String ast = "";
      String astInside = "";

      if (args.length != 2)
         System.out.println("Usage: java Asteriskoi num_of_collumns num_of_rows");
      else {
         x = Integer.parseInt(args[0]);
         y = Integer.parseInt(args[1]);
      
         System.out.println("Starting");
       
         for(int i=1; i <= x; i++) {   
            ast = ast + "*";
            if ((i != 1) && (i != x))
               astInside = astInside + " ";
            else
               astInside = astInside + "*";
           }
         
            for(int j=1; j <= y; j++) {
            if ((j == 1) || (j == y))
               System.out.println(ast);
            else
               System.out.println(astInside);
         }
      }
   }
}


clepto έγραψε:αλλά γιατί πρέπει να βάζω x-1 και y-1 για να μου βγάζει το σωστό;

Γιατί όταν ορίζεις τη μεταβλητή ast την αρχικοποιείς ήδη με έναν αστερίσκο.