Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package sk.paz1a.practicals.Tyzden12;
- import java.util.List;
- import org.apache.commons.math3.util.ArithmeticUtils;
- public class Zlomok implements Comparable<Zlomok>, Roundable {
- private int citatel;
- private int menovatel;
- public Zlomok(int citatel, int menovatel) {
- this.citatel = citatel;
- this.menovatel = menovatel;
- }
- public int getCitatel() {
- return citatel;
- }
- public int getMenovatel() {
- return menovatel;
- }
- private int najvacsiDelitel(int a, int b) {
- return ArithmeticUtils.gcd(a, b);
- }
- public Zlomok pripocitaj(Zlomok z) {
- int menovatelia = this.menovatel * z.getMenovatel();
- int citatelia = ((menovatelia / this.menovatel) * this.citatel) + ((menovatelia / z.menovatel) * z.citatel);
- Zlomok novyZlomok = new Zlomok(citatelia, menovatelia);
- return novyZlomok.normalizuj();
- }
- public Zlomok normalizuj() {
- int delitel = najvacsiDelitel(citatel, menovatel);
- return new Zlomok(citatel / delitel, menovatel / delitel);
- }
- public static Zlomok sucet(List<Zlomok> zlomky) {
- Zlomok vysledok = new Zlomok(0, 1);
- for (Zlomok zlomok : zlomky) {
- vysledok = vysledok.pripocitaj(zlomok);
- }
- return vysledok;
- }
- @Override
- public String toString() {
- return citatel + "/" + menovatel;
- }
- @Override
- public int compareTo(Zlomok o) {
- return Double.compare(citatel / (double) menovatel, o.getCitatel() / (double) o.getMenovatel());
- }
- @Override
- public int roundValue() {
- return 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement