Java - Ayuda con ejercicio estructuras de datos

 
Vista:
sin imagen de perfil

Ayuda con ejercicio estructuras de datos

Publicado por mokuton (1 intervención) el 27/10/2021 06:11:20
Debo incorporar un método de recursividad en un programa que utiliza pilas y colas. El asunto es que al inicio del programa, por medio de un menú, debo tomar el nombre de una persona, agregarlo a una cola para seguidamente solicitarle un número. Este número lo debo convertir a base binaria utilizando recursividad.
Luego el nombre, número y número binario debo ingresarlos a una pila. Mi problema es que no logro llegar a la lógica para incorporar el método recursivo en el código donde ingreso los 3 datos a la pila:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
public class Main {
    /*
    registrar números enteros en base decimal y convertirlos a base binaria.
    */
    public static void main(String[] args) {
        String nombre = null;
        int seleccion = 0;
        int numero = 0;
        int binario = 0;
        Cola fichas = new Cola();
        Pila miNumero = new Pila();
 
        do{
            seleccion = Integer.parseInt(JOptionPane.showInputDialog("**********"
                    + "REGISTRO DE NUMEROS – ESTRUCTURAS DE DATOS************"
                + "\n\n 1. Entregar ficha"
                + "\n2. Digitar números"
                +" \n3. Ver cantidad de números convertidos"
                +" \n4. Mover números a vector"
                +" \n5. Ver números registradas"
                +" \n6. Identificar número binario repetido"
                + "\n7. Limpiar sistema (eliminar números)"
                + "\n8. Salir"
                + "\n\n Digite la opción que desea ejecutar:"
                + "\n ****************************************************************"));
            switch(seleccion){
                case 1:
                    nombre = JOptionPane.showInputDialog("Ingrese su nombre");
                    fichas.encola(new NodoC(nombre));
                    break;
                case 2:
                    if(fichas.getFrente()== null){
                        JOptionPane.showMessageDialog(null, "La cola esta vacia.");
                    }else{
                        NodoC atendiendoProfesor = fichas.atiende();
                        JOptionPane.showMessageDialog(null, "Estamos atendiendo al profesor: "
                                + atendiendoProfesor.getNombreProfesor());
                        numero = Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero entero: "));
                        convertirBinario(numero);
//ESTA ES LA SECCION QUE ME ESTA DANDO LATA
                        miNumero.push(new NodoP(numero, atendiendoProfesor.getNombreProfesor(), binario));
                    }
                    break;
                case 3:
                    break;
                case 4:
                    break;
                case 5:
                    break;
                case 6:
                    break;
                case 7:
                    break;
                case 8:
                    JOptionPane.showMessageDialog(null, "Gracias por utilizar nuestro sistema");
                    break;
                default:
                    JOptionPane.showMessageDialog(null, "Digite una opción válida");
            }
        }while(seleccion!=8);
    }
 
    public static void convertirBinario(int decimal) {
        if (decimal < 2) {
            System.out.print("el numero es 1 o 0");
        } else {
            convertirBinario(decimal/2);
            System.out.print(decimal%2);
        }
    }
 
 
}

Les adjunto el código de las pilas, colas y sus respectivos nodos. Bueno, el codigo completo hasta ahora.

Les agradece,

M
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
sin imagen de perfil

Ayuda con ejercicio estructuras de datos

Publicado por JUAN DIEGO (3 intervenciones) el 22/02/2024 14:16:04
Screenshot_2




HOLA ME PUEDES AYUDAR
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