ZADACI

 

 

     Primjer 1:

//Ispisivanje pozdrava.

public class Pozdrav1 {

  public static void main (String[] vpar) {

    System.out.println ("Pozdrav svima!");

  }

}

 

     Primjer 2:

//Izracunavanje zbira dva cijela broja.

public class Zbir1 {

  public static void main (String[] vpar) {

    System.out.print ("Unesite dva cijela broja: ");

    int a = Citaj.Int (), b = Citaj.Int ();

    int c = a + b;

    System.out.println ("Zbir unijetih brojeva: " + c);

  }

}

 

     Primjer 3:

//Izracunavanje obima(obujma) i povrsine(oplosja) kruga.

public class Krug1 {

  public static void main (String[] vpar) {

    System.out.print ("Poluprecnik? ");

    double r = Citaj.Double ();

    System.out.println ("Obim     = " + (2*r*Math.PI));

    System.out.println ("Povrsina = " + (r*r*Math.PI));

  }

}

 

     Primjer 4:

//Povrsina trougla u ravni.

public class Trougao1 {

  public static void main (String[] vpar) {

 

    // Tjemena trougla:

    System.out.println ("Koordinate tjemena trougla");

    System.out.print ("- prvo  tjeme? ");

    double xA = Citaj.Double (), yA = Citaj.Double ();

    System.out.print ("- drugo tjeme? ");

    double xB = Citaj.Double (), yB = Citaj.Double ();

    System.out.print ("- trece tjeme? ");

    double xC = Citaj.Double (), yC = Citaj.Double ();

 

    // Stranice trougla:

    double a = Math.sqrt (Math.pow (xB-xC, 2) + Math.pow (yB-yC, 2));

    double b = Math.sqrt (Math.pow (xC-xA, 2) + Math.pow (yC-yA, 2));

    double c = Math.sqrt (Math.pow (xA-xB, 2) + Math.pow (yA-yB, 2));

 

    // Povrsina trougla:

    double s = (a + b + c) / 2;

    double P = Math.sqrt (s * (s-a) * (s-b) * (s-c));

    System.out.println ("Povrsina trougla: " + P);

  }

}

 

     Primjer 5:

//Najmanji od tri broja.

public class Min1 {

  public static void main (String[] vpar) {

    System.out.print ("Tri broja? ");

    int a = Citaj.Int (), b = Citaj.Int (), c = Citaj.Int ();

    int min = a;

    if (b < min) min = b;

    if (c < min) min = c;

    System.out.println ("Najmanji=  " + min);

  }

}

 

     Primjer 6:

//Uredjivanje tri broja.

public class Uredi1 {

  public static void main (String[] vpar) {

    System.out.print ("Tri broja? ");

    double a = Citaj.Double (), b = Citaj.Double (), c = Citaj.Double ();

    if (a > b) { double p = a; a = b; b = p; }

    if (a > c) { double p = a; a = c; c = p; }

    if (b > c) { double p = b; b = c; c = p; }

    System.out.println ("Uredjeno=  " + a + " " + b + " " + c);

  }

}

 

     Primjer 7:

//Rjesavanje sistema od dvije linearne jednacine.

public class LinJed {

  public static void main (String[] vpar) {

    System.out.print ("Koeficijenti prve jednacine?  ");

    double a1 = Citaj.Double (), b1 = Citaj.Double (), c1 = Citaj.Double ();

    System.out.print ("Koeficijenti druge jednacine? ");

    double a2 = Citaj.Double (), b2 = Citaj.Double (), c2 = Citaj.Double ();

    double D  = a1 * b2 - a2 * b1,

           Dx = c1 * b2 - c2 * b1,

           Dy = a1 * c2 - a2 * c1;

    if (D != 0) {

      double x = Dx / D, y = Dy / D;

      System.out.println ("x= " + x);

      System.out.println ("y= " + y);

    } else

      if (Dx==0 && Dy==0)

        System.out.println ("Sistem je neodredjen.");

      else

        System.out.println ("Sistem je protivrecan.");

  }

}

     Primjer 8:

//Rjesavanje kvadratne jednacine.

public class KvadJed {

  public static void main (String[] vpar) {

    final int REALNI = 0, DVOSTRUKI = 1,  // Sifre vrsta rjesenja jednacine.

              KOMPLEKSNI = 2, LINEARNA = 3, POGRESNA = 4;

 

    System.out.print ("Koeficijenti kvadratne jednacine? ");

    double a = Citaj.Double (), b = Citaj.Double (), c = Citaj.Double ();

    double x1 = 0, x2 = 0,            // Realni dijelovi korijena.

           y1 = 0, y2 = 0;            // Imaginarni dijelovi korena.

    int vrsta;                        // Vrsta rjesenja jednacine.

 

    if (a != 0) {

      double d = b * b - 4 * a * c;   // Diskriminanta jednacine.

      if (d > 0) {

        vrsta = REALNI;

        x1 = (- b + Math.sqrt (d)) / (2 * a);

        x2 = (- b - Math.sqrt (d)) / (2 * a);

      } else if (d == 0) {

        vrsta = DVOSTRUKI;

        x1 = - b / (2 * a);

      } else {

        vrsta = KOMPLEKSNI;

        x1 = - b / (2 * a);

        y1 = Math.sqrt(-d) / (2*a);

        x2 = x1;

        y2 = - y1;

      }

    } else

      if (b != 0) {

        vrsta = LINEARNA;

        x1 = - c / b;

      } else

        vrsta = POGRESNA;

 

    if (vrsta == REALNI)

      System.out.println ("Realni korijeni su " + x1 + " i " + x2);

    else if (vrsta == DVOSTRUKI)

      System.out.println ("Dvostruki realni korijen je " + x1);

    else if (vrsta == KOMPLEKSNI)

      System.out.println ("Kompleksni korijeni su (" + x1 + ',' + y1 +

                                           ") i (" + x2 + ',' + y2 + ')');

    else if (vrsta == LINEARNA)

      System.out.println ("Rjesenje linearne jednacine je " + x1);

    else if (vrsta == POGRESNA)

      System.out.println ("Podaci nemaju smisla!");

  }

}

 

     Primjer 9:

//Tabeliranje vrijednosti izraza.

public class Tabela1 {

  public static void main (String[] vpar) {

    System.out.print ("xmin, xmax, dx? ");

    double xmin = Citaj.Double (), xmax = Citaj.Double (), dx = Citaj.Double ();

    System.out.print ("\nx\ty\n================\n");

    for (double x=xmin; x<=xmax; x+=dx) {

      double y = (x*x - 2*x - 2) / (x*x +1);

      System.out.println (x + "\t" + y);

    }

  }

}

 

     Primjer 10:

//Izracunavanje zbira uzastopnih prirodnih brojeva.

public class Izraz1 {

  public static void main (String[] vpar) {

    System.out.print ("n? "); int n = Citaj.Int ();

    double s = 0;

    for (int i=1; i<=n; s+=i++);

    System.out.println ("s= " + s);

  }

}

 

     Primjer 11:

//Izracunavanje proizvoda uzastopnih prirodnih brojeva.

public class Izraz2 {

  public static void main (String[] vpar) {

    System.out.print ("n? "); int n = Citaj.Int ();

    long s = 1;

    for (int i=1; i<=n; s*=i++);

    System.out.println ("s= " + s);

  }

}

 

     Primjer 12:

//Izracunavanje zbira faktorijela.

public class Izraz3 {

  public static void main (String[] vpar) {

    System.out.print ("n? "); int n = Citaj.Int ();

    long s = 0;

    for (int f=1, i=1; i<=n; i++) {

      f *= i;

      s += f;

    }

    System.out.println ("s= " + s);

  }

}

 

     Primjer 13:

//Izracunavanje slozenog zbira.

public class Izraz4 {

  public static void main (String[] vpar) {

    System.out.print ("n? "); int n = Citaj.Int ();

    double s = 0, g = 0; long f = 1;

    for (int i=1; i<=n; i++) {

      f *= i;

      g += 1. / (i+1);

      s += f / g;

    }

    System.out.println ("s= " + s);

  }

}

 

     Primjer 14:

//Srednja vrijednost i standardna devijacija

//                niza realnih brojeva.

public class Statist {

  public static void main (String[] vpar) {

    System.out.print ("\nBroj elemenata niza? "); int n = Citaj.Int ();

    while (n > 0) {

      System.out.print ("Elementi niza? ");

      double s = 0, d = 0;

      for (int i=1; i<=n; i++)

        { double a = Citaj.Double (); s += a; d += a * a; }

      s /= n; d = Math.sqrt (d / n - s * s);

      System.out.println ("Srednja vrednost:      " + s);

      System.out.println ("Standardna devijacija: " + d);

      System.out.print   ("\nBroj elemenata niza? "); n = Citaj.Int ();

    }

  }

}

 

     Primjer 15:

//Ispisivanje u binarnom brojevnom sistemu.

public class Binar {

  public static void main (String[] vpar) {

    while (true) {

      System.out.print ("Decimalni broj? "); short dec = Citaj.Short ();

    if (dec == 9999) break;

      System.out.print ("Binarni broj:   ");

      for (int i=1; i<=16; i++) {

        int bit = (dec & 0x8000) >>> 15;

        System.out.print (bit);

        if (i % 4 == 0) System.out.print (' ');

        dec <<= 1;

      }

      System.out.println ();

    }

  }

}

 

     Primjer 16:

//Tabeliranje polinoma zadatog pomocu koeficijenata.

public class Polinom {

  public static void main (String[] vpar) {

    System.out.print ("Red polinoma? "); int n = Citaj.Int ();

    float[] a = new float [n+1];

    System.out.print ("Koeficijenti? ");

    for (int i=n; i>=0; i--) a[i] = Citaj.Float ();

    System.out.print ("xmin,xmax,dx? ");

    float xmin = Citaj.Float (), xmax = Citaj.Float (), dx = Citaj.Float ();

    System.out.print ("\nx\tp(x)\n================\n");

    for (float x=xmin; x<=xmax; x+=dx) {

      float p = a[n];

      for (int i=n-1; i>=0; p=p*x+a[i--]);

      System.out.println (x + "\t" + p);

    }

  }

}

 

     Primjer 17:

//Srednja vrijednost brojeva djeljivih sa 3.

public class SrVred1 {

  public static void main (String[] vpar) {

    while (true) {

      System.out.print ("n? "); int n = Citaj.Int ();

    if (n < 0) break;

      int[] a = new int [n];

      System.out.print ("A? ");

      for (int i=0; i

      double s = 0; int k = 0;

      for (int i=0; i

        if (a[i] % 3 == 0 ) { s += a[i]; k++; }

      if (k != 0) s /= k;

      System.out.println ("s= " + s);

    }

  }

}

 

     Primjer 18:

//Najmanji element niza.

public class Min2 {

  public static void main (String[] vpar) {

    while (true) {

      System.out.print ("n? "); int n = Citaj.Int ();

    if (n<=0) break;

      double[] a = new double [n];

      System.out.print ("A? "); for (int i=0; i

      double min = a[0];

      for (int i=1; i

      System.out.println ("min= " + min + '\n');

    }

  }

}

 

     Primjer 19:

//Obrtanje redoslijeda elemenata niza.

public class Obrni {

  public static void main (String[] vpar) {

    while (true) {

      System.out.print ("n? "); int n = Citaj.Int ();

    if (n<=0) break;

      double[] a = new double [n];

      System.out.print ("A? ");

      for (int i=0; i

      for (int i=0, j=n-1; i

        double b = a[i]; a[i] = a[j]; a[j] = b;

      }

      System.out.print ("A=");

      for (int i=0; i

      System.out.print ("\n\n");

    }

  }

}

 

     Primjer 20:

//Najmanji element niza.

public class Min2 {

  public static void main (String[] vpar) {

    while (true) {

      System.out.print ("n? "); int n = Citaj.Int ();

    if (n<=0) break;

      double[] a = new double [n];

      System.out.print ("A? "); for (int i=0; i

      double min = a[0];

      for (int i=1; i

      System.out.println ("min= " + min + '\n');

    }

  }

}

 

      Primjer 21:

//Ispisivanje binomnih koeficijenata.

public class BinKo {

  public static void main (String[] vpar) {

    System.out.print ("nmax? "); int nmax = Citaj.Int ();

    int[] b = new int [nmax+1];

    System.out.println ();

    for (int n=0; n<=nmax; n++) {

      b[n] = 1;

      for (int k=n-1; k>0; k--) b[k] += b[k-1];

      for (int k=0; k<=n; System.out.print (b[k++]+" "));

      System.out.println ();

    }

  }

}

 

     Primjer 22:

//Medjusobna zamjena najmanjeg i najveceg elementa matrice.

public class MinMax {

  public static void main (String[] vpar) {

    while (true) {

      System.out.print ("m, n? ");

      int m = Citaj.Int (), n = Citaj.Int ();

    if (m<=0 || n<=0) break;

      float[][] a = new float [m][n];

      for (int i=0; i

        System.out.print (i+1 + ". vrsta? ");

        for (int j=0; j

      }

      float min = a[0][0], max = min;

      int imin = 0, jmin = 0, imax = 0, jmax = 0;

      for (int i=0; i

        for (int j=0; j

          if      (a[i][j] < min) { min = a[i][j]; imin = i; jmin = j; }

          else if (a[i][j] > max) { max = a[i][j]; imax = i; jmax = j; }

      float b = a[imin][jmin];

      a[imin][jmin] = a[imax][jmax];

      a[imax][jmax] = b;

      System.out.println ();

      for (int i=0; i

        for (int j=0; j

        System.out.println ();

      }

      System.out.println ();

    }

  }

}

 

     Primjer 23:

//Transponovanje matrice.

public class Transpon {

  public static void main (String[] vpar) {

    while (true) {

 

      // Citanje dimenzija matrice:

      System.out.print ("\nBroj vrsta i kolona? ");

      int m = Citaj.Int (), n = Citaj.Int();

    if (m<=0 || n<=0) break;

 

      // Citanje elemenata matrice:

      int[][] a = new int [m][n];

      for (int i=0; i

        System.out.print (i+1 +". vrsta? ");

        for (int j=0; j

      }

 

      // Obrazovanje transponovane matrice:

      int[][] b = new int [n][m];

      for (int i=0; i

        for (int j=0; j

 

      // Zamena stare matrice novom matricom:

      a = b; int p = m; m = n; n = p;

 

      // Ispisivanje rezultata:

      System.out.print ("\nTransponovana matrica:\n");

      for (int i=0; i

        for (int j=0; j

        System.out.println ();

      }

    }

  }

}

 

     Primjer 24:

//Uredjivanje niza brojeva metodom izbora.

public class Uredi2 {

  public static void main (String[] vpar) {

    while (true) {

 

      // Citanje duzine niza:

      System.out.print ("\nDuzina niza? "); int n = Citaj.Int ();

    if (n <= 0) break;

 

      // Stvaranje i ispisivanje niza:

      int[] a = new int [n];

      System.out.print ("\nPocetni niz:\n\n");

      for (int i=0; i

        System.out.print ((a[i] = (int)(Math.random() * 10)) + " ");

        if (i%30==29 || i==n-1) System.out.println ();

      }

 

      // Uredjivanje niza:

      for (int i=0; i

        for (int j=i+1; j

          if (a[i] > a[j]) { int b = a[i]; a[i] = a[j]; a[j] = b; }

 

      // Ispisivanje uredjenog niza:

      System.out.print ("\nUredjeni niz:\n\n");

      for (int i=0; i

        System.out.print (a[i] + " ");

        if (i%30==29 || i==n-1) System.out.print ("\n");

      }

    }

  }

}