entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

0voto

Alguien sabe, no me ignoren

Hola a todos, espero que estén muy bien. Yo estoy estudiando programación, y mi profesor no explica bien y cuando termina de explicar una cosa pone un ejercicio. Yo una vez le pregunté que no le había entendido y me dijo que hubiese prestado atención a la clase, y no fui el único que no entendió. Me gustaría que me ayuden este ejercicio porque esto va a ir una prueba final.

Si no entendí mal el ejercicio es utilizando switch, métodos y array. Como que los array estén dentro de los métodos, que se carguen, se listen, se modifiquen, que se pueda eliminar y que busque esa palabra e indicar su posición con array. Y que los métodos se muestren en pantalla.

La consigna es esta:

Crear un programa en Java utilizando métodos (void o funciones) para cada operación y un menú que permita acceder a cada una de ellas:

Presione:

1- Cargar palabras en el array

2 - Listar los elementos almacenados en el array

3 - Modificar una palabra almacenada en el array

4 - Eliminar una palabra almacenada del array

5 - Buscar palabra e indicar su posición

0 - Finalizar programa

La opción 5 pide una palabra y nos devuelve su posición (índice) dentro del array si es que se encuentra dentro del mismo.

Les agradecería un montón si me ayudan, si me pasan el codigo y me explican, gracias.

1 Respuesta

0voto

ArtEze Puntos1180

No sé si ya lo programaste, pero no me resisto a preguntarle a ChatGPT jajaja.

https://chat.openai.com/share/a8fac26b-0892-4d36-adcc-17531ea9e782

Preguntas tan fáciles que te las responde en 30 segundos, quizás deberían redefinir las universidades para complicarla un poco más, o que pongan problemas reales y no ejemplos.

Si hay algún error corregimos el código.

import java.util.Scanner;

public class Main {
    private static final int MAX_TAMANO = 100;
    private static String[] palabras = new String[MAX_TAMANO];
    private static int tamano = 0;
    private static Scanner scanner = new Scanner(System.in);

    public static void main(String[] args) {
        int opcion;
        do {
            mostrarMenu();
            opcion = scanner.nextInt();
            scanner.nextLine(); // Consumir el carácter de nueva línea

            switch (opcion) {
                case 1:
                    cargarPalabras();
                    break;
                case 2:
                    listarPalabras();
                    break;
                case 3:
                    modificarPalabra();
                    break;
                case 4:
                    eliminarPalabra();
                    break;
                case 5:
                    buscarPalabra();
                    break;
                case 0:
                    System.out.println("Programa finalizado.");
                    break;
                default:
                    System.out.println("Opción inválida. Por favor, seleccione una opción válida.");
            }
        } while (opcion != 0);
    }

    private static void mostrarMenu() {
        System.out.println("\nPresione:");
        System.out.println("1- Cargar palabras en el array");
        System.out.println("2- Listar los elementos almacenados en el array");
        System.out.println("3- Modificar una palabra almacenada en el array");
        System.out.println("4- Eliminar una palabra almacenada del array");
        System.out.println("5- Buscar palabra e indicar su posición");
        System.out.println("0- Finalizar programa");
        System.out.print("Su elección: ");
    }

    private static void cargarPalabras() {
        System.out.print("Ingrese la cantidad de palabras que desea cargar: ");
        int cantidad = scanner.nextInt();
        scanner.nextLine(); // Consumir el carácter de nueva línea

        System.out.println("Ingrese las palabras una por una:");
        for (int i = 0; i < cantidad; i++) {
            System.out.print("Palabra " + (i + 1) + ": ");
            String palabra = scanner.nextLine();
            palabras[tamano++] = palabra;
        }
        System.out.println("Palabras cargadas correctamente.");
    }

    private static void listarPalabras() {
        if (tamano == 0) {
            System.out.println("No hay palabras almacenadas.");
            return;
        }
        System.out.println("Palabras almacenadas:");
        for (int i = 0; i < tamano; i++) {
            System.out.println((i + 1) + ". " + palabras[i]);
        }
    }

    private static void modificarPalabra() {
        if (tamano == 0) {
            System.out.println("No hay palabras almacenadas para modificar.");
            return;
        }
        System.out.print("Ingrese el índice de la palabra que desea modificar: ");
        int indice = scanner.nextInt();
        scanner.nextLine(); // Consumir el carácter de nueva línea

        if (indice < 1 || indice > tamano) {
            System.out.println("Índice fuera de rango.");
            return;
        }

        System.out.print("Ingrese la nueva palabra: ");
        String nuevaPalabra = scanner.nextLine();
        palabras[indice - 1] = nuevaPalabra;
        System.out.println("Palabra modificada correctamente.");
    }

    private static void eliminarPalabra() {
        if (tamano == 0) {
            System.out.println("No hay palabras almacenadas para eliminar.");
            return;
        }
        System.out.print("Ingrese el índice de la palabra que desea eliminar: ");
        int indice = scanner.nextInt();
        scanner.nextLine(); // Consumir el carácter de nueva línea

        if (indice < 1 || indice > tamano) {
            System.out.println("Índice fuera de rango.");
            return;
        }

        for (int i = indice - 1; i < tamano - 1; i++) {
            palabras[i] = palabras[i + 1];
        }
        tamano--;
        System.out.println("Palabra eliminada correctamente.");
    }

    private static void buscarPalabra() {
        if (tamano == 0) {
            System.out.println("No hay palabras almacenadas para buscar.");
            return;
        }
        System.out.print("Ingrese la palabra que desea buscar: ");
        String palabraBuscada = scanner.nextLine();

        for (int i = 0; i < tamano; i++) {
            if (palabras[i].equalsIgnoreCase(palabraBuscada)) {
                System.out.println("La palabra \"" + palabraBuscada + "\" se encuentra en la posición " + (i + 1) + " del array.");
                return;
            }
        }
        System.out.println("La palabra \"" + palabraBuscada + "\" no se encuentra en el array.");
    }
}

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta