Advertisement
LonelyShepherd

Средна вредност [Лаб. 1.1]

Oct 16th, 2017
393
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.84 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4.  
  5. public class Array<E> {
  6.     private E data[];
  7.     private int size;
  8.    
  9.     public Array(int size) {
  10.         data = (E[])new Object[size];
  11.         this.size = size;
  12.     }
  13.    
  14.     public int getLength() {
  15.         return size;
  16.     }
  17.    
  18.     public E get(int position) {
  19.         if(position >= 0 && position < size)
  20.             return data[position];
  21.         return null;
  22.     }
  23.    
  24.     public void set(int position, E o) {
  25.         if(position >= 0 && position < size)
  26.             data[position] = o;
  27.     }
  28.    
  29.     public static int brojDoProsek(Array<Integer> niza){
  30.         int sum = 0, avg = 0;
  31.        
  32.         for(int i = 0; i < niza.getLength(); i++) {
  33.             sum += niza.get(i);
  34.         }
  35.        
  36.         avg = sum / niza.getLength();
  37.        
  38.         int min = Math.abs(avg - niza.get(0)), index = 0;
  39.        
  40.         for(int i = 1; i < niza.getLength(); i++) {
  41.             if(Math.abs(avg - niza.get(i)) < min) {
  42.                 min = Math.abs(avg - niza.get(i));
  43.                 index = i;
  44.             }
  45.             if(Math.abs(avg - niza.get(i)) == min) {
  46.                 if(niza.get(i) < niza.get(index)) {
  47.                     min = niza.get(i);
  48.                     index = i;
  49.                 }
  50.             }
  51.         }
  52.        
  53.         return niza.get(index);
  54.     }
  55.    
  56.     public static void main(String[] args) throws IOException{
  57.         BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in));
  58.         String s = stdin.readLine();
  59.         int N = Integer.parseInt(s);
  60.        
  61.         Array<Integer> niza = new Array<Integer>(N);
  62.        
  63.         for(int i = 0; i < N; i++) {
  64.             s = stdin.readLine();
  65.             niza.set(i, Integer.parseInt(s));
  66.         }
  67.        
  68.         System.out.println(brojDoProsek(niza));    
  69.     }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement