Java - código que me permita ingresar solo los números 1,2,3,4,5,6,7,8,9,10 utilizando arreglos

 
Vista:
Imágen de perfil de Maick
Val: 4
Ha aumentado su posición en 6 puestos en Java (en relación al último mes)
Gráfica de Java

código que me permita ingresar solo los números 1,2,3,4,5,6,7,8,9,10 utilizando arreglos

Publicado por Maick (3 intervenciones) el 05/05/2019 02:43:20
como puedo arreglar este código que me permita ingresar solo los números 1,2,3,4,5,6,7,8,9,10 utilizando arreglos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
public class Vector
{
 
    public static void main (String [] args){
        JTextArea muestra_datos = new JTextArea();
        muestra_datos.setText("datos del Vector\n");
 
        int arreglo[]=new int[10];
        int i;
        for (i=0; i<arreglo.length; i++){
        arreglo[i]=Integer.parseInt (JOptionPane.showInputDialog(null,"Digite un dato del vector en la posicion"+i));
 
        for (i=0; i < arreglo.length; i++){
        muestra_datos.append(" "+arreglo[i]);
        }
        JOptionPane.showMessageDialog(null,muestra_datos);
    }
    }
 
}
 
to
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

código que me permita ingresar solo los números 1,2,3,4,5,6,7,8,9,10 utilizando arreglos

Publicado por Kabuto (1381 intervenciones) el 05/05/2019 12:35:37
¿Te refieres a que solo acepte esos valores: 1,2,3,4,5,.... y además obligatoriamente en ese orden ?

Lo solucionas muy fácilmente con un bucle while.
Fíjate que para la posicion del arreglo 0, ha de introducir un 1.
Para la posicion 1, ha de introducir un 2.
Para la 2, un 3...

Es decir, si la posicion es i, se ha de introducir el valor i + 1.

Pues ahí ya tenemos una condición para hacer que un bucle pida continuamente el dato, hasta que el usuario introduzca el correcto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
 
public class Vector
{
 
	public static void main (String [] args){
		JTextArea muestra_datos = new JTextArea();
		muestra_datos.setText("datos del Vector\n");
 
		int arreglo[]=new int[10];
		int i;
		for (i=0; i<arreglo.length; i++){
			do {
			arreglo[i]=Integer.parseInt (JOptionPane.showInputDialog(null,"Digite un dato del vector en la posicion "+i));
			}while(arreglo[i] != i+1);
		}
 
		for (i=0; i < arreglo.length; i++){
			muestra_datos.append(" "+arreglo[i]);
		}
		JOptionPane.showMessageDialog(null,muestra_datos);
	}
}

Si te refieres a que los valores de 1 a 10 se pueden introducir en cualquier orden, solucionarlo sería algo más complicado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar