2017-06-28 1 views
0
#!/bin/sh 
echo “Enter number:” 
read n 
num=$n 
rev=0 
while [ $num –ne 0 ] 
do 
rem= `expr $num % 10` 
rev= `expr $rev \* 10 + $rem` 
num= `expr $num/10` 
done 
if [ $rev –eq $n ] 
then 
echo $n “is a palindrome” 
else 
echo $n “is not a palindrome” 
fi 

単項演算子は数の回文

を期待::

として、私はエラーを取得しています、これを固定で私を助けてください。

答えて

0

予期しない問題です。あなたのダッシュ-文字が正しいダッシュではありません。

ダッシュのの表現は、0xe28093 Unicode Character 'EN DASH' (U+2013)です。
しかし、右ダッシュの16進表現はASCII 0x2dです。

echo -n '–' | xxd  # 00000000: e280 93 
echo -n '-' | xxd  # 00000000: 2d 

したがって、正しいダッシュに変更する必要があります。

関連する問題