Advertisement
Guest User

Untitled

a guest
Jan 18th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.93 KB | None | 0 0
  1. package Firma.lab6;
  2.  
  3. import java.io.*;
  4. import java.util.Locale;
  5. import java.util.Scanner;
  6.  
  7. /**
  8.  * Created by Maciej on 21.12.2016.
  9.  */
  10. public class Zad1 {
  11.  
  12.  
  13.     public int k, w;
  14.     double max;
  15.     PrintWriter wyj;
  16.     PrintWriter wyjP;
  17.     BufferedReader wej;
  18.     StreamTokenizer st;
  19.     Scanner sc;
  20.     double[][] mac;
  21.  
  22.     public Zad1() throws java.io.FileNotFoundException {
  23.         wyj = new PrintWriter(System.out, true);
  24.         wej= new BufferedReader( new InputStreamReader(System.in));
  25.         st = new StreamTokenizer(wej);
  26.         wyjP = new PrintWriter(new File("macierz.txt"));
  27.         Locale.setDefault(Locale.US);
  28.     }
  29.  
  30.     void generowanie() throws java.io.IOException
  31.     {
  32.         wyj.printf("podaj liczbe wierszy, kolumn i maksymalna wartosc: ");
  33.         st.nextToken();
  34.         w=(int) st.nval;
  35.         st.nextToken();
  36.         k=(int) st.nval;
  37.         st.nextToken();
  38.         max = st.nval;
  39.         genMacierz();
  40.     }
  41.  
  42.  
  43.     void genMacierz()
  44.     {
  45.         mac = new double[w][k];
  46.         for(int i = 0; i < w; i++)
  47.             for(int j = 0; j < k; j++)
  48.                 mac[i][j] = Math.random() * max;
  49.  
  50.     }
  51.  
  52.     void wyswietl()
  53.     {
  54.         String linia = "";
  55.         for(int i = 0; i < w; i++)
  56.         {
  57.             for (int j = 0; j < k; j++)
  58.                 linia += String.format("%7.2f", mac[i][j]);
  59.             wyj.println(linia);
  60.             linia = "";
  61.         }
  62.     }
  63.  
  64.     void doPliku()
  65.     {
  66.         wyjP.println("Macierz");
  67.         wyjP.println(w);
  68.         wyjP.println(k);
  69.         String linia = "";
  70.         for(int i = 0; i < w; i++)
  71.         {
  72.             for (int j = 0; j < k; j++)
  73.                 linia += String.format("%7.2f", mac[i][j]);
  74.             wyjP.println(linia);
  75.             wyjP.flush();
  76.             linia = "";
  77.         }
  78.     }
  79.  
  80.     void zPliku() throws java.io.FileNotFoundException, java.io.IOException
  81.     {
  82.  
  83.         Reader r = new FileReader("macierz2.txt");
  84.         StreamTokenizer stf = new StreamTokenizer(r);
  85.         stf.nextToken();
  86.         stf.nextToken();
  87.         w=(int) stf.nval;
  88.         stf.nextToken();
  89.         k=(int) stf.nval;
  90.         mac = new double[w][k];
  91.  
  92.         for(int i = 0; i < w; i++)
  93.             for(int j = 0; j < k; j++) {
  94.                 stf.nextToken();
  95.                 mac[i][j] = stf.nval;
  96.             }
  97.  
  98.         r.close();
  99.     }
  100.  
  101.     void srednia() {
  102.  
  103.         double suma = 0;
  104.         for (int i = 0; i < w; i++)
  105.             for (int j = 0; j < k; j++)
  106.                 suma += mac[i][j];
  107.         wyj.printf("srednia wartosci macierzy: " + suma / w / k);
  108.     }
  109.  
  110.  
  111.  
  112.     public static void main(String[] args) throws java.io.IOException, java.lang.NullPointerException{
  113.  
  114.         Zad1 macierz = new Zad1();
  115.        // macierz.generowanie();
  116.        // macierz.wyswietl();
  117.        // macierz.doPliku();
  118.         macierz.zPliku();
  119.         macierz.wyswietl();
  120.         macierz.srednia();
  121.     }
  122.  
  123.  
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement