создание массива из вывода уравнения

Я хочу, например, разделить все целые числа от 1 до 5 на 8 и поместить их в массив. Я думал о чем-то похожем на код ниже, но я уверен, что это неправильно и грязно:

 COUNTER=0
 until [  $COUNTER -lt 8 ]; do
        ${steps[$COUNTER]}=1+(5-1)/8*$COUNTER
        let COUNTER+=1
 done

Есть ли способ сделать это чисто, если мой код верен вообще?

0
задан 7 October 2015 в 16:25

3 ответа

bash может только сделать целочисленную арифметику. Используйте bc для плаваний:

from=1
to=5
steps=8
for c in $(seq 0 $steps) ; do
    ar[c]=$(echo $(bc -l <<< "$from + ($to - $from) / $steps * $c"))
done
echo "${ar[@]}"
0
ответ дан 8 October 2015 в 02:25
  • 1
    Все выглядит хорошо. I' m в недоумении. Действительно ли Ваш BIOS актуален с версией 1.23? В противном случае перейдите в acer.com/ac/en/US/content/support-product/2058?b=1 и загрузите новейший BIOS оттуда и установите его. I' d рекомендуют делать хорошее резервное копирование Ваших важных файлов прежде, чем установить его. Никогда не повреждает быть безопасным. – heynnema 28 December 2016 в 10:04

Эти seq команда может увеличить плаванием:

declare -a steps=($(seq 1 .5 5))

Вы можете получить приращение с echo 'scale=1;(5-1)/8'|bc

0
ответ дан 8 October 2015 в 02:25
  • 1
    Вы знаете, что хостинг Google Code прекратил быть? Ссылка повреждается также es другая ссылка на Google. Также аудио вниз выбирает действительно необходимый? – LiveWireBT 27 December 2016 в 04:25

Да, но так как удар не делает арифметики с плавающей точкой, необходимо будет использовать другой инструмент и сохранить его вывод в массиве удара. Например:

$ perl -le 'print $_/8 for 1..5' 
0.125
0.25
0.375
0.5
0.625

Сохраните в массиве с:

array=( $(perl -le 'print $_/8 for 1..5') )
0
ответ дан 8 October 2015 в 02:25
  • 1
    @LiveWireBT, Спасибо I couldn' t находят другой источник для того, что страница Wiki, я зафиксировал страницу проекта также. Нет, I' m не уверенный в этом, как я помню S1-mp3/-mp4, устройства смогли играть Стерео mp3 файлы с 44K частотой дискретизации. Я don' t имеют то устройство больше для тестирования. – user.dz 27 December 2016 в 04:52

Другие вопросы по тегам:

Похожие вопросы: