Ibe11

import java.util.*;


public class Podpriemer {

        /**
         * @param args
         */

        public static void main(String[] args) {
                List<Integer> cisla = new ArrayList<Integer>();

                Scanner citac = new Scanner(System.in);
                while (citac.hasNextInt()) {
                        int cislo = citac.nextInt();
                        if (cislo < 0)
                                break;

                        cisla.add(cislo);
                }

                int sucet = 0;
                for (int i=0; i<cisla.size(); i++)
                        sucet = sucet + cisla.get(i);

                double priemer = sucet / (double)cisla.size();

                List<Integer> podpriemerne = new ArrayList<Integer>();
                for (int cislo: cisla) {
                        if (cislo < priemer) {
                                podpriemerne.add(cislo);
                        }
                }

                Collections.sort(podpriemerne);
                System.out.println(podpriemerne);
        }

}
import java.io.File;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;


public class Skola {

        public Set<String> prednaskyZRiadku(String s) {
                Set<String> prednasky = new HashSet<String>();
                Scanner riadkovyCitac = new Scanner(s);
                while (riadkovyCitac.hasNext()){
                        prednasky.add(riadkovyCitac.next().toUpperCase());
                }
                return prednasky;
        }

        public Set<String> spolocnePrednasky(String subor) {
                Scanner citac = null;
                Set<String> vysledok = null;
                int pocetStudentov = 0;
                try {
                        citac = new Scanner(new File(subor));
                        while (citac.hasNextLine()) {
                                String line = citac.nextLine();
                                Set<String> prednasky = prednaskyZRiadku(line);
                                if (pocetStudentov == 0)
                                        vysledok = prednasky;
                                else
                                        vysledok.retainAll(prednasky);

                                pocetStudentov++;
                        }
                } catch (Exception e) {
                        System.err.println("Chyba");
                } finally {
                        if (citac != null)
                                citac.close();
                }

                return vysledok;
        }

        public Set<String> prednaskySViacAko(String subor, int pocet) {
                Scanner citac = null;
                Map<String, Integer> tabulka = new HashMap<String, Integer>();
                int pocetStudentov = 0;
                try {
                        citac = new Scanner(new File(subor));
                        while (citac.hasNextLine()) {
                                Set<String> prednasky = prednaskyZRiadku(citac.nextLine());

                                Iterator<String> it = prednasky.iterator();
                                while (it.hasNext()) {
                                        String prednaska = it.next();

                                        if (tabulka.containsKey(prednaska)) {
                                                tabulka.put(prednaska, tabulka.get(prednaska) + 1);
                                        } else {
                                                tabulka.put(prednaska, 1);
                                        }
                                }

                                pocetStudentov++;
                        }
                } catch (Exception e) {
                        System.err.println("Chyba");
                } finally {
                        if (citac != null)
                                citac.close();
                }

                Set<String> vysledok = new HashSet<>();
                for (String prednaska: tabulka.keySet()) {
                        if (tabulka.get(prednaska) >= pocet) {
                                vysledok.add(prednaska);
                        }
                }

                return vysledok;
        }
}
import sk.upjs.umv.NulovyMenovatelException;
import sk.upjs.umv.Zlomok;

public class Spustac {

        /**
         * @param args
         */

        public static void main(String[] args) throws NulovyMenovatelException {
                Skola upjs = new Skola();
                // System.out.println(upjs.spolocnePrednasky("prednasky.txt"));
                // System.out.println(upjs.prednaskySViacAko("prednasky.txt", 2));

                Zlomok z1 = new Zlomok(1, 2);
                Zlomok z2 = new Zlomok(1, 3);
                Zlomok z3 = Zlomok.sucin(z1, Zlomok.POLOVICA);
                System.out.println(z3);
        }

}
package sk.upjs.umv;

public class NulovyMenovatelException extends RuntimeException {

}
package sk.upjs.umv;

public class Zlomok {
        private int citatel;
        private int menovatel;

        public static final Zlomok POLOVICA = new Zlomok(1, 2);

        public Zlomok(int citatel, int menovatel) throws NulovyMenovatelException {
                if (menovatel == 0) {
                        throw new NulovyMenovatelException();
                }
                this.citatel = citatel;
                this.menovatel = menovatel;
        }

        public int getCitatel() {
                return citatel;
        }

        public int getMenovatel() {
                return menovatel;
        }

        @Override
        public String toString() {
                return citatel + "/" + menovatel;
        }

        @Override
        public int hashCode() {
                return 0;
        }

        @Override
        public boolean equals(Object obj) {
                if (this == obj)
                        return true;
                if (obj == null)
                        return false;
                if (getClass() != obj.getClass())
                        return false;
                Zlomok other = (Zlomok) obj;
                return citatel * other.menovatel == menovatel * other.citatel;
        }

        public static Zlomok sucin(Zlomok z1, Zlomok z2) {
                return new Zlomok(z1.citatel * z2.citatel, z1.menovatel * z2.menovatel);
        }
}