Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

thiago.iced

[VisualG - Serie de Fibonacci]

Recommended Posts

Olá, estou tendo que resolver uma lista de exercício para a faculdade e usa visualg, o enunciado do problema é:

 

Escreva um programa que apresente a série de Fibonacci até o décimo quinto termo. Asérie de Fibonacci é formada pela sequência: 1, 1, 2, 3, 5, 8, 13, 21, 34 . . . etc., caracterizando-se pela soma de um termo posterior com o seu anterior subsequente.

 

O meu código ate agora esta da seguinte forma:

 

algoritmo "fibonacci.alg"

var
	i,sFibonacci,temp,rec:inteiro

inicio
	sFibonacci <- 0

	para i de 0 ate 10 faca
		se (i < 2) entao
			sFibonacci <- 1
			escreva(sFibonacci)
		fimse
		se (i = 2) entao
			rec <- (i - 1)
			sFibonacci <- (sFibonacci + rec)
			escreva(sFibonacci)
			temp <- 1
		fimse
		se (i > 2) entao
			sFibonacci <- (sFibonacci + temp)
			temp <- (temp + 1)
			escreva(sFibonacci)
		fimse
	fimpara
fimalgoritmo

Para todo i maior que 2 eu faço um outro calculo, pelo o que eu consegui até agora desenvolver neste raciocicio o i estaria passando pela sua 3º vez achando o 4º termo da série e a variavel sFibonacci teria o valor de 3 que ele, ate ai tudo bem so que ele da como resultado os valores "1 1 2 3 5 8 12 17 23 30 38 47 57 68 80 93" onde até o 6º termo esta correto, so que na soma do 8 + seu termo anterior 5 que teria de dar 13 da 12 pois o sFibonacci tem o valor 8 com e ele soma com a variavel TEMP que vale 4 e deveria valer 5, dai fiz algumas GAMBIARRAS e consegui achar mais alguns termos, mas se eu fizer gambiarra a cada vez que ele não chegar ao número que eu quero eu vou escrever muitas linhas e sei que a lógica desta forma não estaria a correta.

 

Sendo assim, se alguém puder me ajudar com a resolução ou ideias serias de grande ajuda!

Obrigado! :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha vo postar um código q eu fiz no 2º semestre da facu, + foi coisa simples, o google tem td isso:

 

Iterativa: 

Prototipação: Função inteiro Fibonacci (inteiro pos)

Inicio
Variáveis: Inteiro pos;
Escreva(“Digite a posição que deseja ver o numero: “);
Leia (pos);
x <- fibonacci(pos);
Escreva(“O numero na sequencia de fibonacci é: “+ x);
Fim

Função inteiro Fibonacci (inteiro posx)
Inteiro: anterior, atual, y;
atual <- 1;
anterior <- 0;
cont <- 0;
Seq[0] <- anterior;
 i <- 1;
Enquanto cont <> posx faça
		   Aux <- atual;
		   atual <- anterior + atual;
		   Seq[i] <- atual;
					   anterior <- aux; 
			   cont <- cont+1;
		i <- i +1;
			Fim_Enquanto;
			y <- seq[i-1]
			Retorna(y);
 Fim_função

+ de uma testada pq acho q a professora nem corrigiu :lol:

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.