| Kuutio4.java |
1 /**
2 * Ohjelma tulostaa tietoja kuutiosta "siistissä" muodossa
3 * @author Vesa Lappalainen
4 * @version 1.0, 05.01.2003
5 */
6 class Kuutio4 {
7 static final String TAHOKAS = "Kuutiossa";
8 static final int KARKIA = 8;
9 static final int SIVUTASOJA = 6;
10 static final int SARMIA = 12;
11
12 /**
13 * Palauttaa jonon s muotoiltuna vähintään len-pituiseksi
14 * <pre>
15 * Esim: fmt("2",3) => " 2"
16 * fmt("2",-3) => "2 "
17 * </pre>
18 * @param s muotoiltava jono
19 * @param len pituus, negatiivisella vasempaan laitaan, pos. oikeaan
20 * @return muotoiltu jono
21 */
22 static String fmt(String s,int len) {
23 int needs = Math.abs(len) - s.length();
24 if ( needs <= 0 ) return s;
25 StringBuffer fill = new StringBuffer(" ");
26 while ( fill.length() < needs ) fill.append(" ");
27 fill.delete(needs,1000);
28 if ( len < 0 ) return s + fill;
29 return fill + s;
30 }
31
32 /**
33 * Tulostaa 2 merkkijonoa ja yhden kokonaisluvun siististi
34 * @param s1 Ensimmäinen tulostettava jono
35 * @param i tulostettava kokonaisluku
36 * @param s2 toinen tulostettava jono
37 */
38 static void tulosta(String s1, int i, String s2) {
39 System.out.println(fmt(s1,20) + " " + fmt(String.valueOf(i),2) + " " + s2);
40 }
41
42 public static void main(String[] args) {
43 tulosta(TAHOKAS + " on", KARKIA , "kärkeä,");
44 tulosta("" , SIVUTASOJA, "sivutasoa ja");
45 tulosta("" , SARMIA , "särmää.");
46 }
47 }
48 | Kuutio4.java |