Java - Problema con registro en ciclo for applet

   
Vista:

Problema con registro en ciclo for applet

Publicado por John Fernando (2 intervenciones) el 17/09/2015 21:26:30
Reciban un cordial saludo,

Heche una ojeada a los foros anteriores y no encontré un tema similar o que se ajuste a lo que me sucede. Solicito de la colaboración de ustedes para poder comprender el correcto funcionamiento en el siguiente código. El codigo tiene como propósito solicitar un numero de dimensión y con base a esto le solicita al usuario ingresar una serie de números correspondiente con el numero de dimensión. En el ta1 debe capturar los números que ingresa el usuario, en el ta2 debe imprimir en orden los números que el usuario ingreso por el ta1.

He revisado el algoritmo varias veces y lo he comparado con otros que me pusieron de ejemplo, pero no entiendo por que el programa no me pide los números. el programa pide el dato de dimensión, luego pide el primer valor y si por ejemplo le digo que dimensión=5, ingreso luego el primer numero del array, ejemplo 3, lo que hace es replicar ese 3, 5 veces sin continuar solicitando datos al usuario.

Solicito de su amable colaboracion con esto, no requiero que me colaboren haciendo el trabajo, pero si saber por que esta ocurriendo esto. Tengo 5 trabajos parecidos y sigue ocurriendo lo mismo, si logro arreglar este, arreglare el resto. Por favor su ayuda.

package prueba;

import java.applet.Applet;
import java.awt.Button;
import java.awt.Label;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;



public class prueba1 extends Applet implements ActionListener{


Label l0,l1,l2,l3,l4; //Etiquetas sobre el aplet
TextField tf1,tf2;//Declaracion de la caja de texto
Button b1,b2,b3; //Botones
TextArea ta1,ta2; // Caja donde se imprimen los resultados
int n,i,j,aux;
int A[];


/******INTERFAZ GRAFICA ************/


public void init() {
setSize(420,300); //Tamaño del applet

//Labels
l0 = new Label("POO - Ordenar Lineal");l0.setBounds(160,5,150,15);
l1 = new Label("Digite la dimension:");l1.setBounds(20,90,130,30);
l2 = new Label(" ");l2.setBounds(290,30,150,30);
l3 = new Label(" ");l3.setBounds(290,160,150,30);
l4 = new Label(" ");l4.setBounds(20,180,80,30);
//Campos de texto
tf1 = new TextField();tf1.setBounds(150, 90, 30, 30);
tf2 = new TextField();tf2.setBounds(150, 180, 30, 30);
//Campos de area
ta1 = new TextArea();ta1.setBounds(285, 70, 110, 80);
ta2 = new TextArea();ta2.setBounds(285, 200, 110, 80);
//botones
b1 = new Button("Continuar");b1.setBounds(190, 90, 80, 30);
b2 = new Button("Seguir");b2.setBounds(190, 180, 80, 30);


add(l0);
add(l1);
add(l2);
add(l3);
add(l4);
add(tf1);
add(tf2);
add(b1);
add(ta1);
add(ta2);
add(b2);


setLayout(null);/*Para organizar el contenedor se asigna un layout manager
usando setlayout.*/
b1.addActionListener(this);
b2.addActionListener(this);

};
@Override
public void actionPerformed(ActionEvent ae) {



if (ae.getSource() == b1){

n = Integer.parseInt(tf1.getText());
A=new int[n];
tf2.setEditable(true);
tf1.setEditable(true);
l4.setText("Digite A[0]");
};

if (ae.getSource() == b2){

for(i=0;i<A.length;i++){
l4.setText("Digite A["+ i +"]");
A[i] = Integer.parseInt(tf2.getText());

};
l2.setText("Vector Leido");

for(i=0;i<A.length;i++){

ta1.append(A[i]+" ");
}

tf2.setEditable(false);

for(i=0;i<A.length-1;i++)
for(j=i+1;j<A.length;j++)
if(A[i]>A[j])
{
aux=A[i];
A[i]=A[j];
A[j]=aux;
}
l3.setText("Vector Ordenado");

for(i=0;i<A.length;i++){
ta2.append(A[i]+" ");

};
};


};


};
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