aboutsummaryrefslogtreecommitdiff
path: root/challenge-153/abigail/bash/ch-2.sh
blob: a685d429933f331aafd8d7b6833eea7432f1bca8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/bin/sh

#
# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
#

#
# Run as: bash ch-2.sh < input-file
#

set -f

declare -a fac
fac[0]=1
for ((n = 1; n <= 9; n ++))
do  fac[$n]=$((n * ${fac[$((n - 1))]}))
done

while read num
do   ((n   = num))
     ((sum = 0))
     while ((n > 0))
     do    ((sum += ${fac[n % 10]}))
           ((n   /= 10))
     done
     if   ((sum == num))
     then echo 1
     else echo 0
     fi
done