diff --git a/src/qdev5/Fraction.java b/src/qdev5/Fraction.java new file mode 100644 index 0000000000000000000000000000000000000000..1726b9136fc16fe473abac3ccca8ca59f488d733 --- /dev/null +++ b/src/qdev5/Fraction.java @@ -0,0 +1,44 @@ +package qdev5; + +public class Fraction extends Number +{ + private int num; + private int denom; + + public Fraction(int n, int d) + { + this.num = n; + this.denom = d; + } + + + @Override + public int intValue() + { + return this.num / this.denom; + } + + @Override + public long longValue() + { + return this.num / this.denom; + } + + @Override + public float floatValue() + { + return this.num / this.denom; + } + + @Override + public double doubleValue() + { + return this.num / this.denom; + } + + @Override + public String toString() + { + return this.num+" divisé par "+this.denom; + } +} \ No newline at end of file diff --git a/src/qdev5/NumberFactory.java b/src/qdev5/NumberFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..7cb7ac0de17170087886071ab2a374073261cb48 --- /dev/null +++ b/src/qdev5/NumberFactory.java @@ -0,0 +1,29 @@ +package qdev5; + +public class NumberFactory +{ + public static Number number(int i) + { + return i; + } + + public static Number number(long l) + { + return l; + } + + public static Number number(float f) + { + return f; + } + + public static Number number(double d) + { + return d; + } + + public static Number number(int i1, int i2) + { + return i1/i2; + } +} \ No newline at end of file diff --git a/src/qdev5/Tabular.java b/src/qdev5/Tabular.java new file mode 100644 index 0000000000000000000000000000000000000000..fc5c49af5a92262e651fa0b43abdcc3069ba45fe --- /dev/null +++ b/src/qdev5/Tabular.java @@ -0,0 +1,48 @@ +package qdev5; + +public class Tabular +{ + private Number tab[]; + + public Tabular(int size) + { + tab = new Number[size]; + } + + public void set(int i, Number nbr) + { + tab[i] = nbr; + } + + public Number max() + { + Number i = tab[0]; + for(Number nbr : tab) + { + if(nbr.doubleValue()>i.doubleValue()) { i=nbr; } + } + return i; + } + + @Override + public String toString() + { + String str = "["; + boolean isFinal; + for(Number i : tab) + { + try{ + isFinal = i.equals(max()); + } catch (NullPointerException e) { + System.err.println("null number"); + } + finally + { + isFinal = false; + } + str=str+i+(isFinal ? "" : ","); + } + str=str+"]"; + return str; + } +} diff --git a/src/qdev5/TestNumbers.java b/src/qdev5/TestNumbers.java new file mode 100644 index 0000000000000000000000000000000000000000..3f1dee601e98c5ab4264c187f3cb0282ac9d11a2 --- /dev/null +++ b/src/qdev5/TestNumbers.java @@ -0,0 +1,21 @@ +package qdev5; + +public class TestNumbers +{ + public static void main(String[] args) + { + int i1 = 10; + int i2 = 5; + Fraction frac = new Fraction(i1, i2); + System.out.println(frac); + System.out.println(frac.doubleValue()); + System.out.println(frac.floatValue()); + System.out.println(frac.intValue()); + System.out.println(frac.longValue()); + Tabular tabular = new Tabular(5); + tabular.set(1, NumberFactory.number(32)); + tabular.set(2, NumberFactory.number(100,3)); + tabular.set(4, NumberFactory.number(3.5)); + System.out.println(tabular); + } +} diff --git a/src/tp10/UsePrioritySchedulingQueue.java b/src/tp10/UsePrioritySchedulingQueue.java index 0a001225691deeb7b88f4760d26f6d76100b6643..f60f1b39dfea52df573ffe6d770b842779e5ff0b 100644 --- a/src/tp10/UsePrioritySchedulingQueue.java +++ b/src/tp10/UsePrioritySchedulingQueue.java @@ -5,7 +5,7 @@ public class UsePrioritySchedulingQueue public static void main(String[] args) { PrioritySchedulingQueue<Task> tasks = new PrioritySchedulingQueue<>(); - + Task t1 = new Task("t1", 3); Task t2 = new Task("t2", 1); Task t3 = new Task("t3", 2); diff --git a/test/qdev/RaceTest.java b/test/qdev/RaceTest.java index 7dd164fd1c426e184f95319c40cf75ba898c3b66..4b6ef2f0baf096f157183f1ccd9602b2634d26fb 100644 --- a/test/qdev/RaceTest.java +++ b/test/qdev/RaceTest.java @@ -1,4 +1,4 @@ -package tpQU.tp04; +package qdev; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; @@ -7,6 +7,8 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import tp02.Competitor; + import java.util.ArrayList; import java.util.HashSet; import java.util.List;