author | Christian Urban <urbanc@in.tum.de> |
Wed, 16 Nov 2016 14:37:18 +0000 | |
changeset 50 | 9891c9fac37e |
parent 39 | c6fe374a5fca |
permissions | -rw-r--r-- |
15 | 1 |
// Part 1 about the 3n+1 conceture |
2 |
//================================= |
|
11
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
3 |
|
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
4 |
|
15 | 5 |
//(1) Complete the collatz function below. It should |
6 |
// recursively calculate the number of steps needed |
|
7 |
// until the collatz series reaches the number 1. |
|
8 |
// If needed you can use an auxilary function that |
|
9 |
// performs the recursion. The function should expect |
|
24
66b97f9a40f8
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
18
diff
changeset
|
10 |
// arguments in the range of 1 to 1 Million. |
11
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
11 |
|
18 | 12 |
def collatz(n: Long): ... = ... |
11
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
13 |
|
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
14 |
|
15 | 15 |
//(2) Complete the collatz bound function below. It should |
16 |
// calculuate how many steps are needed for each number |
|
18 | 17 |
// from 1 upto a bound and returns the maximum number of |
18 |
// steps and the corresponding number that needs that many |
|
15 | 19 |
// steps. You should expect bounds in the range of 1 |
18 | 20 |
// upto 1 million. The first component of the pair is |
21 |
// the maximum number of steps and the second is the |
|
22 |
// corresponding number. |
|
15 | 23 |
|
18 | 24 |
def collatz_max(bnd: Int): (Int, Int) = ... |
11
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
25 |
|
417869f65585
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
26 |