gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
PolinomL, primer Paskalov trougao
[spa1-materijali.git] / kodovi / polinomi / Paskal.java
1 public class Paskal {
3 static final int d = 4; /* koliko mesta zauzima pojedinacni broj */
5 static String sep = "";
7 static void postaviSeparator() {
8 sep = "";
9 for (int i = 0; i < d; i++) {
10 sep += ' ';
11 }
12 }
14 static void poravnanje(int mesta) {
15 for (int i = 0; i < mesta; i++) {
16 System.out.print(sep);
17 }
18 }
20 static void stampajKoeficijente(PolinomL p, int mestaLevo) {
21 poravnanje(mestaLevo);
22 int maksimalniStepen = p.maksimalniStepen();
23 for (int stepen = 0; stepen <= maksimalniStepen; stepen++) {
24 Svetovid.out.print(String.format("%" + d + ".0f",
25 p.koeficijentUz(stepen)));
26 System.out.print(sep);
27 }
28 }
30 static void paskalovTrougao(int n) {
31 PolinomL poli = new PolinomL();
32 poli.postaviClan(1.0, 0);
34 PolinomL xPlus1 = new PolinomL();
35 xPlus1.postaviClan(1.0, 1);
36 xPlus1.postaviClan(1.0, 0);
38 stampajKoeficijente(poli, n - 1);
39 System.out.println();
40 for (int i = 2; i <= n; i++) {
41 poli = poli.puta(xPlus1);
42 stampajKoeficijente(poli, n - i);
43 System.out.println();
44 }
45 }
47 // jednostavna varijanta koja odmah stampa polinom na ekran - tacno, ali
48 // nije predstavljeno kako treba
49 static void paskalovTrougaoDirektno(int n) {
50 PolinomL poli = new PolinomL();
51 poli.postaviClan(1.0, 0);
53 PolinomL xPlus1 = new PolinomL();
54 xPlus1.postaviClan(1.0, 1);
55 xPlus1.postaviClan(1.0, 0);
57 System.out.println(poli);
58 for (int i = 2; i <= n; i++) {
59 poli = poli.puta(xPlus1);
60 System.out.println(poli);
61 }
62 }
64 public static void main(String[] args) {
65 System.out.println("Program stampa Paskalov trougao");
66 System.out.println();
67 System.out.println("Unesite broj do koga stampamo: ");
68 System.out.println();
69 int broj = Svetovid.in.readInt();
70 postaviSeparator();
71 paskalovTrougao(broj);
72 }
73 }
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner