Erro em laço de array?

3 respostas
P

o programa deveria ver se um determinado array estaria presente num array maior

public boolean ehParteDe(int[] parte,int[] todo){ int tamanho=0; for(int j=0;j<todo.length;j++){ if(parte[0]==parte[j]){ tamanho=j; for(int i=0;i<parte.length;i++){ if(parte[i]==todo[j]) j++; if(parte[i]==todo[parte.length+tamanho-1] && i==todo.length-tamanho-1) return true; } } } return false; }

só que ta dando outOfBound, onde?? estranho, fiz os teste no papel e não acho…

vlw

3 Respostas

RenataFA

Tenta assim:

private boolean ehParteDe(int[] parte,int[] todo){
	for(int j=0;j<todo.length;j++){
		if(parte[0]==todo[j]){ //mudei aqui
			for(int i=0;i<parte.length;i++){
				if(parte[i]==todo[j]){
					j++;

					if (i+1 == parte.length) // e aqui
						return true;
				}
			}
		}
	}
	return false;
}
P

vlww minha querida!!!
ehh naum nasci pra esse negocio msm viu…
enquanto n sai a transferencia vamo apanhando…hehe

Andre_Brito

Só um probleminha de lógica.
Não desanima que com o tempo você pega o jeito. Só praticar :smiley:

Criado 23 de novembro de 2007
Ultima resposta 24 de nov. de 2007
Respostas 3
Participantes 3