<Предыдущая | Содержание: | Следующая>
Пример сценария
В качестве реального примера мы создадим сценарий, который выполняет общий расчет ежемесячных платежей по кредиту. В приведенном ниже скрипте мы используем здесь документ для передачи скрипта в bc:
#! / Bin / Баш
# credit-calc: скрипт для расчета ежемесячных платежей по кредиту PROGNAME = $ {0 ## * /} # Используйте расширение параметра, чтобы получить использование базового имени () {
кошка << - EOF
Использование: ОСНОВНЫЕ ПРОЦЕНТНЫЕ МЕСЯЦЫ $ PROGNAME
Где:
ОСНОВНОЙ - это сумма ссуды. ПРОЦЕНТ - это годовая процентная ставка в виде числа (7% = 0.07). МЕСЯЦЫ - это продолжительность срока кредита.
EOF
}
если (($ #! = 3)); затем использование
выйти из 1
fi
основная сумма = 1 доллар США проценты = 2 доллара США месяца = 3 доллара США
bc << - EOF
масштаб = 10
i = $ проценты / 12 p = $ основная сумма
n = $ месяцев
a = p * ((i * ((1 + i) ^ n)) / (((1 + i) ^ n) - 1)) выведите a, "\ n"
EOF
#! / Bin / Баш
# credit-calc: скрипт для расчета ежемесячных платежей по кредиту PROGNAME = $ {0 ## * /} # Используйте расширение параметра, чтобы получить использование базового имени () {
кошка << - EOF
Использование: ОСНОВНЫЕ ПРОЦЕНТНЫЕ МЕСЯЦЫ $ PROGNAME
Где:
ОСНОВНОЙ - это сумма ссуды. ПРОЦЕНТ - это годовая процентная ставка в виде числа (7% = 0.07). МЕСЯЦЫ - это продолжительность срока кредита.
EOF
}
если (($ #! = 3)); затем использование
выйти из 1
fi
основная сумма = 1 доллар США проценты = 2 доллара США месяца = 3 доллара США
bc << - EOF
масштаб = 10
i = $ проценты / 12 p = $ основная сумма
n = $ месяцев
a = p * ((i * ((1 + i) ^ n)) / (((1 + i) ^ n) - 1)) выведите a, "\ n"
EOF
При выполнении результаты выглядят так:
[я @ linuxbox ~] $ ссудный расчет 135000 0.0775 180
[я @ linuxbox ~] $ ссудный расчет 135000 0.0775 180
1270.7222490000
1270.7222490000
В этом примере рассчитывается ежемесячный платеж по ссуде в размере 135,000 7.75 долларов США под 180% годовых в течение 15 месяцев (XNUMX лет). Обратите внимание на точность ответа. Это определяется значением, придаваемым специальным лестница переменная в bc сценарий. Полное описание bc язык сценариев обеспечивается bc справочная страница. Хотя его математические обозначения немного отличаются от обозначений оболочки (bc больше похож на C), большая часть будет довольно знакомой, исходя из того, что мы узнали до сих пор.