#!/bin/bash # Vypis clenu Fibbonacciho posloupnosti # Autor: Michal Makovec, uco 63983 # POUZITE PROMENNE # n ... pocet clenu Fibbonaciho posloupnosti (FP), zadany na vstupu # i ... zastupuje poradi clena FP # j ... zastupuje hodnotu clena FP # k ... pomocna prom. # pokud je jako option zadano -h/--help vypise napovedu # pokud je jako option zadano -a/--about vypise kratke povidani o FP while [ "$1" != "" ]; do case $1 in -a | --about ) cat about exit ;; -h | --help ) cat help exit esac done # osetreni kdy na vstupu zadano zap. cislo, nula, jiny znak... while true; do echo "" echo "*****************" echo "Zadej pocet clenu Fibbonacciho posloupnosti:" read n if (echo $n | grep -q '^[0-9][0-9]*$') && ([ $n -gt 0 ]); then break fi echo "*****************" echo "Zadal jsi PISMENO, NULU nebo ZAPORNE CISLO..." echo "Pozaduji kladne nenulove cislo nebo h pro napovedu." if [ $n = 'h' ]; then cat help echo "" fi done # vychozi hodnoty promennych i=1 j=0 k=1 # vypis clenu FP a prislusejicich hodnot dle zadaneho poctu clenu FP while [ $i -le $n ] do echo "$i. clen Fibbonacciho posloupnosti ma hodnotu $j." j=$(($j+$k)) k=$(($j-$k)) i=$(($i+1)) done