Mostrando entradas con la etiqueta Programación orientada a objetos (POO). Mostrar todas las entradas
Mostrando entradas con la etiqueta Programación orientada a objetos (POO). Mostrar todas las entradas

ANIMACIÓN CON HILOS (DRAGON BALL FUCIÓN)

ANIMACIÓN CON HILOS (DRAGON BALL FUCIÓN)

Aquí les dejo una aplicación hecha con un hilo simple, trata de una animación de la función de anime de dragón ball. 
Al iniciar debes ingresar el tiempo en mili-segundos, el valor que ingreses deberá ser mayor a 20 mili-segundos para que sea valido e inicie la animación.
Recuerda: 1000 mili-segundos equivalen a 1 segundo.

HILO DE ANIMACIÓN

public class Hilo01 extends Thread{
    JLabel lb1;
    JTextField txt01;
    JTextField txt02;
    int tiempo;
    
    public void Iniciar(JLabel lbl_1, JTextField txt, int time,JTextField txt1) {
        lb1 = lbl_1;
        txt01 = txt;
        txt02 = txt1;
        tiempo = time;
    }
    
    @Override
    public void run(){
        try{
            txt02.setText("wWw.SysTateM.CoM");
            while(true){
                for (int i = 0; i < 72; i++) {
                    try{
                        Thread.sleep(tiempo);
                    } catch (InterruptedException ex) {
                        Logger.getLogger(Hilo01.class.getName()).log(Level.SEVERE, null, ex);
                    }
                    lb1.setIcon(new ImageIcon(getClass().getResource(i+".jpg")));
                    txt01.setText("\t      FOTOGRAMA "+i);
                }
            }
        }catch(Exception e){
            System.err.println(""+e.getMessage());
        }
    }

}

CAPTURAS




DESCARGAR EJEMPLO





PROGRAMAS CON HILOS EN JAVA (NETBEANS)

PROGRAMAS CON HILOS EN JAVA (NETBEANS)

Programas de ordenamiento y búsqueda de datos usando vectores e hilos.

EL PRIMER PROGRAMA consta de la utilización de métodos de ordenamiento como:
  • Método de la burbuja
  • Método de Inserción
  • Método de Qicksort


EL SEGUNDO PROGRAMA Consiste en buscar datos:
  • Desde el inicio del arreglo hasta la mitad del arreglo.
  • Desde el fin del arreglo hasta la mitad del arreglo

CAPTURAS






DESCARGAR PROGRAMAS (CLIC SOBRE LA IMAGEN)


DESCARGAR PROGRAMA CON VECTORES (ALMACENAMIENTO EN VECTORES)

PROGRAMACON VECTORES 


HOLA CHICOS (AS), BUENO LES RAIGO UN PROGRAMA HECHO CON VECTORES.
LAS CONTRASEÑAS DE ACCESO SON:

Alexander Tume Naquiche - 1112100226
Linkol Olano León - 1112000510
Jaiver Acuña Cueva - 2006000713
Joel de la Cruz Mugerza - 1112000014
Fernando Huñac Torres - 142004101






AUTÓMATAS EN JAVA (VALIDACIÓN DE GRAMÁTICAS - POO)

CREACIÓN DE AUTÓMATAS PARA LA VALIDACIÓN DE GRAMÁTICAS

AUTÓMATA N°1 (GRAMATICA (ab)):

package Clases;

//@author Systatem Technology
//http://www.systatem.com

public class Automata1 {
    private char[] carac; //Vector que contenera la cadena
    private int cont; //indice del vector
    private boolean flag ; //Afirma o Niega la gramatica de la cadena
 
    //Proceso (capturaCadena), trae una cadena ingresada desde tu interfaz grafica
    //y lo convierte en un vector (en este caso 'carac')
    public void capturaCadena(String cad){
        carac = cad.toCharArray();//Convierte la cadena a un vector de tipo 'CHAR'
    }
 
    public void Inicio(){
        if (carac[0]=='a') { //Verifica que el primer caracter de la cadena se 'a'
            cont = 0;
            X();//Inicia el proceso X
        }else{
            qError();//Niega la gramatica de la cadena
        }
    }
 
    private void X(){
        //Condiciona que el indice del vector se menor al tamaño del mismo
        //Si la condicion es verda entra al proceso
        if (cont<carac.length) {
            //Condiciona el vector que contiene la cadena en su indice actual que se igual a el caracter 'a'
            //Si la condicion es verdadera el indice del vector incrementa en 1 y vuelve a repetir el mismo proceso
            //Si la condicion es Falsa y el vector en indice actual es igual al caracter 'b', el indice del
            //vector incrementa en 1 y se va al proceso T (Finalizacion del automata)
            if (carac[cont]=='a') {
                cont ++;
                X();//Regresa al proceso X
            }else if(carac[cont]=='b'){
                cont ++;
                T(); //Inicia el proceso de Finalizacion
            }else{
                qError();//Proceso que niega la gramatica de la cadena no es (a^n)(b)
            }
        }
    }
   
    //El proceso T finaliza el automata: Afirmando o negando si la gramatica de la
    //cadena ingresada es (a^n)(b)
    private void T(){
        flag = true ;//Inicia flag con verdadero
        if (cont == carac.length) {
            flag = true;//Afirma la gramatica de la cadena
        }else{
            flag = false;//Niega la gramatica de la cadena
        }
    }
 
    private void qError() {
        flag = false;//Niega la cadena
    }
    public boolean Flag(){
        return flag;//retorna el valor de Flag
    }

}

INTERFAZ GRÁFICA


AUTÓMATA N°2 (GRAMATICA (a bn c)):


package Clases;

/**
 * @author Systatem Technology
 * http://www.systatem.com
 */
public class Automata5 {
    private char[] car;//Vector tipo char que contenera la cadena
    private boolean flag; //afirmara y negara si la gramatica de la cadena ingresada es (a^n)(b)(c)
    private int con;//indice del vector
    public void capturarCadena(String cad){
        car = cad.toCharArray();//convierte la cadena en un vector de caracteres
    }
    public void Inicio(){
        if (car[0]=='a') {//verifica que el indice inicial del vector sea 'a'
            X();
            con = 0; //incia el indice en 0
        }else{
            flag = false; //Niega la gramatica de la cadena
        }
    }

    private void X() {
        //Condiciona que el indice del vector se menor a el tamaño del vector
        //Si se cumple la condicion, eentra a la siguiente condicion y
        //Si no se cumple la condicion entra al proceso qError
        if (con<car.length) {
            //Condiciona que el vector en idice actual sea 'a'
            //Si esto es verda, el indice del vector incrementa y engtra al proceso S
            //Si no Finaliza el automata entrando al proceso(F)
            if (car[con]=='a') {
                con ++;
                S();
            }else{
                F();
            }
        }else{
            qError();//Finaliza el automata
        }
    }

    private void S() {
        //Condiciona que el indice del vector sea menor al tamaño del vector
        if (con<car.length) {
            //Condiciona que el vector en su indice actual sea 'b'
            //Si es verdad el indice incrementa en 1 y regresa al mismo proceso S
            //Si no es asi condiciona que el vector en su indice actual sea 'c'
            //Si esta nueva condicion es verdad el indice incrementa en 1 y finaliza
            //el automata con el proceso F
            //Y si estas dos condiones son falsas entra al proceso qError
            if (car[con]=='b') {
                con ++;
                S();
            }else if(car[con]=='c'){
                con ++;
                F();
            }else{
                qError();
            }
        }
    }
 
    //Proceso F: verifica que el indice del vector se igual al tamaño del vector
    private void F() {
        flag = true;
        if (con == car.length) {
            flag = true;//Afirma que la gramatica de la cadena ingresada es (a)(b^n)(c)
        }else{
            flag = false;//Niega que la gramatica de la cedana ingresada es (a)(b^n)(c)
        }
    }
    //qError: Nos dice que la gramatica de la cadena ingresada no es (a)(b^n)(c)
    private void qError(){
        System.err.println("En error");
        flag = false;
    }
    public boolean Val(){
        return flag;
    }
}

INTERFAZ GRÁFICA




DESCARGAR EJEMPLO






Estadisticas

  • Días en línea
  • Entradas
  • Comentarios