Problema ao compilar

9 respostas
T

Eu fiz um código de um fibonnaci recursivo iterativo, só que na hora de compilar da um erro e eu não consigo identificar qual o problema, e também nao tenho ctz se a logica que eu usei ta certa, aceito ajuda na melhora do programa

class FiboIterativo {
	Fibonnaci[] fibo;
	
	int at = 1;
	int an = 0;
	int no;
		int fibonnaci(int p) {
			for (int i = 0; i < p; i++) {
			if (p <= 2) {
				return 1;
			}
			else {
				no = at + an;
				an = at;
				at = no;
			}
		}
		System.out.println(this.at);
	}
}

class TesteIterativo {
	public static void main(String[]args) {
		FiboIterativo teste = new FiboIterativo();
		teste.fibo = new Fibonnaci[10];
		int i = teste.fibonnaci(6);
	}
}

9 Respostas

drsmachado

Só faltou dizer qual erro…

T

Falha minha.
FiboIterativo.java:2: error: cannot find symbol
Fibonnaci[] fibo;
^

symbol: class Fibonnaci
location: class FiboIterativo

FiboIterativo.java:25: error: cannot find symbol
teste.fibo = new fibo[10];
^
symbol: class fibo
location: class TesteIterativo
2 erros

drsmachado

Regra básica do java:
Para que uma classe possa ser encontrada, ela precisa ser public e estar em um arquivo com extensão .java de mesmo nome.

Logo, FiboInterativo, a classe, deve ser

public class FiboInterativo...

E estar em um arquivo chamado FiboInterativo.java

Aliás, de onde vem o array Fibonnaci[] fibo???

T
public class FiboIterativo {
	Fibonnaci[] fibo;
	
	int at = 1;
	int an = 0;
	int no;
		int fibonnaci(int p) {
			for (int i = 0; i < p; i++) {
			if (p <= 2) {
				return 1;
			}
			else {
				no = at + an;
				an = at;
				at = no;
			}
		}
		System.out.println(this.at);
	}
}

Fiz a alteração para public e continua retornando o mesmo erro, cannot find symbol.

F

Na verdade a classe Fibonnaci tem que estar “Public”, você não colocou o código dela aí…

T

não entendi, pode explicar melhor?

F

Aqui…

Fibonnaci[] fibo;

Esse “Fibonnaci” é uma classe não é?

T

ah sim, entendi onde tava o erro já, tinha esquecido de criar a classe fibonnaci, se eu mudar o Fibonnaci para int já deve solucionar né?

F

provavelmente

Criado 13 de abril de 2012
Ultima resposta 13 de abr. de 2012
Respostas 9
Participantes 3