URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 559
[ Назад ]

Исходное сообщение
"а как в shell произвести умножение и деление ???"

Отправлено Илья , 07-Мрт-02 19:02 
конкретно 3.3 * 3 и 20 / 1000

Содержание

Сообщения в этом обсуждении
"RE: а как в shell произвести умножение и деление ???"
Отправлено Арлекин , 09-Мрт-02 11:07 
#!/bin/sh
a=33
b=3
d=20
e=100
c=`expr a * b`
f=`expr d / e`

Но на ноль перед делением лучше проверить - в реальной задаче - или юзать trap'ы


"RE: а как в shell произвести умножение и деление ???"
Отправлено Soldier , 10-Мрт-02 12:53 
>#!/bin/sh
>a=33
>b=3
>d=20
>e=100
>c=`expr a * b`
>f=`expr d / e`
>
>Но на ноль перед делением лучше
>проверить - в реальной задаче
>- или юзать trap'ы

Po moemu cheloveku nuzhno 3.3 a ne 33. Prosto u menya
expr rugaetsya - non numeric argument. Pod Linux-om
est' standartnaya proga dc, v printsipe mozhno ispil'zovart'
eyo:

a=3.3
b=3
d=20
e=100
precision=2

c=`dc -e "${precision}k $a ${b}*p"`
f=`dc -e "${precision}k $d ${e}/p"`

Hotya komu kak nravit'sya.


"RE: а как в shell произвести умножение и деление ???"
Отправлено Арлекин , 10-Мрт-02 14:17 
Небыло необходимости делить дроби, да и шелл - язык не для этого. Написать свою С-ную процедурку двухоператорной арифметики с выводом на экран - дело 2-х минут.