1#!/bin/sh
2
3collatz()
4{
5 a="$1"
6 if [ $((a % 2)) -eq 0 ]
7 then
8 echo $((a / 2))
9 else
10 echo $((3 * a + 1))
11 fi
12}
13
14collatzSequence()
15{
16 result="${1}: "
17 i="$1"
18
19 while true
20 do
21 if [ "$i" -eq 1 ]
22 then
23 result="${result}1"
24 break
25 fi
26 result="${result}${i}, "
27 i="$(collatz "$i")"
28 done
29 echo $result
30}
31
32for i in $(seq 10000)
33do
34 echo "$(collatzSequence "$i")"
35done