Sequência de Fibonacci

Publicado por Wagner Souza (última atualização em 31/03/2015)

[ Hits: 6.431 ]

Homepage: https://medium.com/@souzaw

Download 6190.fibonacci.sh




Script que recebe como parâmetro um número e imprime a sequência de Fibonacci contendo apenas números menores do que aquele passado como parâmetro.

Sequência de Fibonacci = 0 1 1 2 3 5 8 13 …, onde o próximo da sequência é a soma dos 2 anteriores.

  



Esconder código-fonte

#!/bin/bash
# Desenvolvido por Wagner Souza em 27/03/2015


i=1
a=0
b=1

echo -n "$a $b "

while [ $i -lt $1 ];
do

        aux=$(($a+$b))
        a=$b
        b=$aux

# Teste na variável aux para não mostrar valores maiores ao que foi passado

if [ $aux -lt $1 ];
then
        echo -n "$aux "
else
        exit
fi

        i=$(($i+1))
done

Scripts recomendados

Shell Script simples usando case

Acelerar leitura e escrita de um HD (hdx/sdx)

Mudando a extensão de vários arquivos

Operações com valores em arquivo texto

Menu tarefas com SSH


  

Comentários
[1] Comentário enviado por MAPOGOS em 07/04/2015 - 13:36h


Porque lt e $1 uma variável no lugar desta eu entenderia que seria $a ou $b.Como é a lógica desta identação?Valeu ateh...

[2] Comentário enviado por wagnerfs em 07/04/2015 - 17:07h


[1] Comentário enviado por TecDogged em 07/04/2015 - 13:36h


Porque lt e $1 uma variável no lugar desta eu entenderia que seria $a ou $b.Como é a lógica desta identação?Valeu ateh...


Boa tarde.

Prezado, o $1 é referente ao valor passado para o script e no exercício pede para calcular a sequência de fibonaci com valores que sejam menores ao parâmetro passado.

A execução do script seria assim:

$ ./fibonacci.sh 20

O número passado será a condição de execução do while. Espero ter esclarecido a tua dúvida.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts