diff options
Diffstat (limited to 'euler72_alt_slow.sh')
-rwxr-xr-x | euler72_alt_slow.sh | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/euler72_alt_slow.sh b/euler72_alt_slow.sh new file mode 100755 index 0000000..3a8514e --- /dev/null +++ b/euler72_alt_slow.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +euler_phi() { + prime_factors=($(factor $1 | cut -d ' ' -f2- | tr ' ' '\n' | sort -u)) + t=$1 + for i in ${prime_factors[@]} + do + t=$(($t/$i*($i-1))) + done + echo $t +} + +sum=0 +i=2 +while [[ $i -le 1000000 ]] +do + sum=$(($sum+$(euler_phi $i))) + i=$(($i+1)) +done +echo $sum |