summaryrefslogtreecommitdiff
path: root/test/files/pos/cours2.scala
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/pos/cours2.scala')
-rw-r--r--test/files/pos/cours2.scala128
1 files changed, 0 insertions, 128 deletions
diff --git a/test/files/pos/cours2.scala b/test/files/pos/cours2.scala
deleted file mode 100644
index c96f588791..0000000000
--- a/test/files/pos/cours2.scala
+++ /dev/null
@@ -1,128 +0,0 @@
-object m1 {
-
- def id(x: Int): Double = x;
- def cube(x: Int): Double = x * x * x;
- def reciprocal(x: Int): Double = 1.0/x;
-
- def sumInts(a: Int, b: Int): Double =
- if (a > b) 0
- else a + sumInts(a + 1, b);
-
- def sumCubes(a: Int, b: Int): Double =
- if (a > b) 0
- else cube(a) + sumCubes(a + 1, b);
-
- def sumReciprocals(a: Int, b: Int): Double =
- if (a > b) 0
- else 1.0/a + sumReciprocals(a, b);
-
-}
-
-object m2 {
-
- def id(x: Int): Double = x;
- def cube(x: Int): Double = x * x * x;
- def reciprocal(x: Int): Double = 1.0/x;
-
- def sum(f: Int => Double, a: Int, b: Int): Double =
- if (a > b) 0
- else f(a) + sum(f, a + 1, b);
-
- def sumInts(a: Int, b: Int): Double = sum(id, a, b);
- def sumCubes(a: Int, b: Int): Double = sum(cube, a, b);
- def sumReciprocals(a: Int, b: Int): Double = sum(reciprocal, a, b);
-}
-
-object m3 {
-
- def sum(f: Int => Double, a: Int, b: Int): Double =
- if (a > b) 0
- else f(a) + sum(f, a + 1, b);
-
- def sumInts(a: Int, b: Int): Double = sum((x => x), a, b);
- def sumCubes(a: Int, b: Int): Double = sum((x => x * x * x), a, b);
- def sumReciprocals(a: Int, b: Int): Double = sum((x => 1.0/x), a, b);
-}
-
-object m4 {
-
- def sum(f: Int => Double) = {
- def sumF(a: Int, b: Int): Double =
- if (a > b) 0
- else f(a) + sumF(a + 1, b);
- sumF
- }
-
- def sumInts = sum(x => x);
- def sumCubes = sum(x => x * x * x);
- def sumReciprocals = sum(x => 1.0/x);
-
- sumCubes(1, 10) + sumReciprocals(10, 20);
-}
-
-object m5 {
-
- def sum(f: Int => Double): (Int, Int) => Double = (a, b) =>
- if (a > b) 0
- else f(a) + sum(f)(a + 1, b);
-
- def sumInts = sum(x => x);
- def sumCubes = sum(x => x * x * x);
- def sumReciprocals = sum(x => 1.0/x);
-
- sumCubes(1, 10) + sumReciprocals(10, 20);
-}
-
-object m6 {
-
- def sum(f: Int => Double)(a: Int, b: Int): Double =
- if (a > b) 0
- else f(a) + sum(f)(a + 1, b);
-
- def sumInts = sum(x => x);
- def sumCubes = sum(x => x * x * x);
- def sumReciprocals = sum(x => 1.0/x);
-
- sumCubes(1, 10) + sumReciprocals(10, 20);
-}
-
-object m7 {
-
- def sum(f: Int => Double)(a: Int, b: Int): Double = {
- def iter(a: Int, result: Double): Double =
- if (a > b) result
- else iter(a + 1, f(a) + result);
- iter(a, 0);
- }
-
- def sumInts = sum(x => x);
- def sumCubes = sum(x => x * x * x);
- def sumReciprocals = sum(x => 1.0/x);
-
- sumCubes(1, 10) + sumReciprocals(10, 20);
-}
-
-object m8 {
-
- def product(f: Int => Double)(a: Int, step: Int, b: Int): Double =
- if (a > b) 1
- else f(a) * product(f)(a + step, step, b);
-
- val pi = 8 * product(x => x * x)(4, 2, 40) / product(x => x * x)(3, 2, 40);
-}
-
-object m9 {
-
- def accumulate[t](combiner: (t, t) => t, nullValue: t, f: Int => t, next: Int => Int)
- (a: Int, b: Int): t =
- if (a > b) nullValue
- else combiner(f(a), accumulate(combiner, nullValue, f, next)(next(a), b));
-
- def inc(x: Int) = x + 1;
-
- def sum(f: Int => Double) =
- accumulate((x: Double, y: Double) => x + y, 0, f, inc);
- def product(f: Int => Double) =
- accumulate((x: Double, y: Double) => x * y, 1, f, inc);
-}
-