Não estou entendendo o porque meus vetores estão estourando…!
vou passar dois exemplos…!
import javax.swing.*;
public class Prog
{
public static void main(String args[])
{
JTextArea texto = new JTextArea(10,10);
String saida="Prog\n";
int vet[]= new int [5];
for(int i=5;i>0;i--)//esse for o valor dele e 5,4,3,2,1 repete 5 vezes é o tamanho do vetor é 5..."
{
vet[i]=Integer.parseInt(JOptionPane.showInputDialog("Dígite o "+(i)+"° número"));
}
texto.setText(saida);
JOptionPane.showMessageDialog(null,texto);
}
}
[code]
import javax.swing.;
import java.util.;
public class AED8
{
public static void main(String args[])
{
Random aleatorio = new Random();
JTextArea texto = new JTextArea(10,10);
int vet[][]= new int[9][9];
int i,j,soma=0,x=-1;
String saida=“Programa 8 \n”;
Estou fazendo um programa que indentifique a matriz secundária… mas como o for tem que ser descrescente também está estourando pelo mesmo motivo alguém sabe o porque…?[/quote]
Você errou cara realmente é aquilo que eu falei…!
vou colocar um programa que prova isso…!
import javax.swing.*;
public class Prog
{
public static void main(String args[])
{
JTextArea texto = new JTextArea(10,10);
String saida="Prog\n";
int vet[]= new int [5];
for(int i=5;i>0;i--)
{
saida+=i;
}
texto.setText(saida);
JOptionPane.showMessageDialog(null,texto);
}
}
O que eu aprendi na faculdade é o seguinte sobre for
exemplo:
fori(i=0;i<5;i++) funciona assim vo colocar em ordem como as coisa acontecem…!
(1° inicilização;2°condição;4°incremento||decremento)
3°valor inicialização
se vc verificar e isso que eu falei 5,4,3,2,1 pois 0 não é menor k zero dai sai!
pelo que eu to vendo aki tem k iniciar algum indíce do vetor com zero que é o zero ésimo realmente é por isso que tah dando pau…??
Não foi isso que falei, o seu for vai percorrer os numeros 1, 2, 3, 4, 5 mesmo, mas 5 não é indice do seu array por isso está “estourando” como você disse, seu for deveria ir de 4 a 0 e não de 5 a 1 como está fazendo… os indices do seu array são 0, 1, 2, 3, 4… começa do 0, entendeu?
o correto seria:
[code]int vet[]= new int [5];
for(int i=4;i>=0;i–)
{
vet[i]=Integer.parseInt(JOptionPane.showInputDialog("Dígite o "+(i)+“° número”));
}[/code]