Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main;
- public class Main {
- public static void main(String[] args) {
- try{
- Ulamek u = new Ulamek(1,6);
- System.out.println(u);
- Ulamek u2 = new Ulamek(2,3);
- u2.dodawanie(u);
- System.out.println(u2);
- }
- catch(ZerowyMianownik zm){
- System.out.println(zm.getMessage());
- }
- }
- }
- //------------------------------------------------
- package main;
- public class Ulamek {
- private int licznik;
- private int mianownik;
- public Ulamek(int licznik, int mianownik) throws ZerowyMianownik {
- if (mianownik == 0){
- throw new ZerowyMianownik("0 watrosc niedozwolona w mianowniku");
- }
- this.licznik = licznik;
- this.mianownik = mianownik;
- skroc();
- }
- public int getLicznik() {
- return licznik;
- }
- public void setLicznik(int licznik) {
- this.licznik = licznik;
- }
- public int getMianownik() {
- return mianownik;
- }
- public void setMianownik(int mianownik) {
- this.mianownik = mianownik;
- }
- @Override
- public String toString() {
- return licznik + "/" + mianownik ;
- }
- private void skroc(){
- int nwd = (new Nwd(licznik, mianownik)).getNwd();
- licznik/= nwd;
- mianownik/= nwd;
- }
- public void dodawanie(Ulamek b){
- licznik = licznik * b.mianownik + b.licznik * mianownik;
- mianownik = mianownik * b.mianownik;
- skroc();
- }
- }
- //------------------------------------------------
- package main;
- public class ZerowyMianownik extends Exception {
- public ZerowyMianownik() {
- }
- public ZerowyMianownik(String msg) {
- super(msg);
- }
- }
- //------------------------------------------------
- package main;
- public class Nwd {
- private int a;
- private int b;
- private int nwd;
- public Nwd(int a, int b) {
- this.a = a;
- this.b = b;
- doNwd();
- }
- private void doNwd() {
- int a = this.getA();
- int b = this.getB();
- while (a != b) {
- if (a > b) {
- a = a - b;
- } else {
- b -= a;
- }
- }
- this.nwd = a;
- }
- public int getA() {
- return a;
- }
- public void setA(int a) {
- this.a = a;
- doNwd();
- }
- public int getB() {
- return b;
- }
- public void setB(int b) {
- this.b = b;
- doNwd();
- }
- public int getNwd() {
- return nwd;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement