Imprimir Fibonacci até um limite n. Os números de Fibonacci satisfazem as condições seguintes: F0 = 0 F1 = 1 Fi = Fi-1 + Fi-2; i maior ou igual 2

17/01/2020

0

Olá!

Estou com esta atividade, criei o código, mas quando digito 1 imagino que o retorno deveria ser 1. No entanto sempre vem 0. Alguma dica sobre a correção ou melhoria do código?

package tema6_1_3;

import java.util.Scanner;

public class Tema6_1_3a {
public static int calcular(int numero) {
if (numero == 0 || numero == 1)
return numero;
else
return calcular(numero - 1) + calcular(numero - 2);
}

public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int numero;
System.out.println("Informe o número desejado: ");
numero = entrada.nextInt();
System.out.println("Série de Fibonacci: " + "\n" + "0");
for (int x = 1; x < numero; x++) {
int y = Tema6_1_3a.calcular(x);
System.out.println(y);
entrada.close();
}
}
}
João Medeiros

João Medeiros

Responder

Post mais votado

17/01/2020

Você errou nessa linha aqui:

for (int x = 1; x < numero; x++) {


Pense bem, x = 1, o for executa se x < numero, então se x = numero o for não executa, em outras palavras, se o número for 1 o for não será executado, mas se for 2 ou mais o programa funcionará normalmente, a solução é substuir o x < numero por x <= numero, desse jeito:

for (int x = 1; x <= numero; x++) {

Sadasd

Sadasd
Responder

Mais Posts

17/01/2020

João Medeiros

Você errou nessa linha aqui:

for (int x = 1; x < numero; x++) {


Pense bem, x = 1, o for executa se x < numero, então se x = numero o for não executa, em outras palavras, se o número for 1 o for não será executado, mas se for 2 ou mais o programa funcionará normalmente, a solução é substuir o x < numero por x <= numero, desse jeito:

for (int x = 1; x <= numero; x++) {


Perfeito, Daniel!
Eu estava tentando achar a solução sempre no if-else da classe "calcular" e não atentei para o for.
Muito obrigado!
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar