Calcular a série de Fibonacci
Publicado por Felipe Leão Mansur Pinheiro (última atualização em 30/09/2009)
[ Hits: 13.514 ]
Eis um algoritmo que serve para calcular a famosa série do matemático Fibonacci. O sistema funciona com o usuário escolhendo as opções fornecidas pelo MENU GERAL, então se a escolha for 1 pede-se, em seguida, o limite da série. Se escolhido 2, mostra-se informações do algoritmo. Se fornecido 3 então o programa aborta a execução e sai.
Por favor, mandem sugestões ou críticas, afinal é errando que se aprende, ainda mais em programação!
The Unforgiven.
#include<stdio.h> #include<conio.h> #include<stdlib.h> int fibonacci(int i) { if((i==0)||(i==1)) return i; else return fibonacci(i-1)+fibonacci(i-2); } int main() { int n,i,f=0,escolha=0; system("color 02"); do{ system("cls"); printf(" * - - - - - - - - - - - - - - - - - - -*\n"); printf(" | & MENU GERAL & |\n"); printf(" | - - - - - - - - - - - - - - - - - - -|\n"); printf(" | (1)-Inicia Serie |\n"); printf(" | |\n"); printf(" | (2)-Sobre o Algoritmo |\n"); printf(" | |\n"); printf(" | (3)-Sair |\n"); printf(" * - - - - - - - - - - - - - - - - - - -*\n"); scanf("%d",&escolha); switch(escolha){ case 1: { printf("Forneca o limite da Serie.\n"); scanf("%d",&n); while(n < 0){ printf("Forneca um numero positivo para a serie!Depois pressione ENTER.\n"); scanf("%d",&n); getch(); } for(i=0;i<n;i++) fibonacci(i); for(i=0;i<n;i++) printf("Fibonacci(%d)=%d\n",++f,fibonacci(i)); f=0; printf("-------------------------------------\n"); printf("A serie de Fibonacci consiste em\n"); printf("F(n)={0 se n=0 , 1 se n=1 ,(n-1)+(n-2) outros casos.\n"); printf("Pressione ENTER.\n"); getch(); break; } case 2: { printf("Desenvolvido por:\n"); printf("!===================================!\n"); printf("! Nome:Felipe Leao !\n"); printf("! Curso:Ciencia da Computacao !\n"); printf("! Periodo:IV !\n"); printf("! Disciplina:APA !\n"); printf("! Instituicao: UNIPAC !\n"); printf("!===================================!\n"); printf("Este algoritmo foi escrito em Linguagem C utilizando a ideia de recursividade.\n"); printf("Futuramente sera incluido a divisao dos elementos dessa serie que servira\npara aproximacao da Proporcao Divina.\n"); printf("Pressione ENTER.\n"); getch(); printf("\n\n"); break; } case 3: { printf("\aOBRIGADO POR USAR ESTE APLICATIVO!\n"); printf("Saindo...\n"); getch(); exit(0); break; } default: { printf("Forneca uma opcao valida.Voltando ao MENU GERAL.\n"); printf("Pressione ENTER.\n"); getch(); break; } } }while(escolha !=3); getch(); return 0; }
Ordenação Topológica com Digrafos
Multiplicação de matrizes com indireção múltipla
Cálculo de média usando funções e struct
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
iso de sistema 32 bit em atividade (6)
erro ao clonar repo github (9)
ASRock H310CM-HG4 vs Linux (14)