Olá, estou com um problema estranho que não faço ideia de como resolver.
Estou fazendo um código para verificar se um número é múltiplo de outro (talvez minha lógica esteja errada).
Sou iniciante em programação e ainda não sei usar o FOR direito,aqui está o código:
verificar.java:
public class verificar {
public boolean verificador (float numero1 , float numero2){
float resultado;
boolean emultiplo ;
float[] multiplos ;
multiplos = new float [10];
int i;
for (i = 0 ; i <= 10 ; i ++){
multiplos[i] = numero2 * i;
}
if (numero1 != multiplos[i]){
emultiplo = false;
}
else{
emultiplo = true;
}
return emultiplo;
}
}
Executar_verificar.java:
import java.util.Scanner;
public class Executora_verificar {
public static void main (String args []){
float numero1 , numero2;
Scanner entrada = new Scanner (System.in);
verificar Executor = new verificar ();
System.out.println ("Digite o primeiro número:");
numero1 = entrada.nextFloat();
System.out.println ("Digite o segundo número:");
numero2 = entrada.nextFloat();
if (Executor.verificador(numero1 , numero2)){
System.out.println ("O número "+numero1+" é múltiplo de "+numero2);
}else{
System.out.println ("O número "+numero1+" não é múltiplo de "+numero2);
}
}
}
O código é compilado corretamente mas quando ele é executado aparecem erros estranhos:
java.lang.ArrayIndexOutOfBoundsException: 10
at verificar.verificador(verificar.java:10)
at Executora_verificar.main(Executora_verificar.java:16)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at edu.rice.cs.drjava.model.compiler.JavacCompiler.runCommand(JavacCompiler.java:271)
Outra dúvida é :por que tudo que eu faço dentro do for não pode ser usado fora dele?
por exemplo :
public class teste{
public static void main (String args []){
boolean booleana;
int [] vetor;
vetor = new int [10];
for ( int i = 0 ; i <=10 ; i ++){
vetor[i] = i ;
booleana = true;
}
/* A variável booleana e o vetor[] se tornam "inutilizaveis" fora do FOR
Ocorrem erros como "variable might not have been initialized" ou "cannot find simble i" */
Desde já agradeço a ajuda.

