elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Como eliminar la casilla de un arreglo en java?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como eliminar la casilla de un arreglo en java?  (Leído 3,503 veces)
fst091

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Como eliminar la casilla de un arreglo en java?
« en: 1 Abril 2016, 22:57 pm »

Hola a todos, estoy realizando un programa en java, pero me quede atorado, no se me ocurre como hacer lo que me falta.
Primero no me elimina como tal el registro, solo vacía los datos del registro que deseo eliminar.
Segundo, no no se como realizar los cambios según sea el caso (por nombre, por edad,etc)
Tercero, como hacer las consultas por nombre y en total.
Si alguien podría ayudarme se los agradeceria muchisimo en imágenes coloco lo que tengo q hacer y a continuación coloco mi practica y después lo que llevo,de antemano gracias.

Sistema de altas, bajas y cambios

1. En equipos de 2 o 3 alumnos, implementar un pequeño sistema de altas, bajas y cambios

con las siguientes característcas:

a. Inicialmente el programa debe presentar un menú con los siguientes campos:

◦ 1.- Altas

◦ 2.- Bajas

◦ 3.- Cambios

◦ 4.- Consultas

◦ 5.- Salir

b. Las “Altas” incluyen la solicitud de información básica para una persona:

◦ Nombre Completo

◦ Edad

◦ Altura

◦ Genero

c. Las “Bajas” permiten la eliminación completa de alguno de los registros

existentes en el sistema. Para ello el sistema pregunta que registro se quiere

eliminar, si el registro no existe se debe mostrar un mensaje de error.

d. Los “Cambios” como su nombre lo indica permite hacer ajustes sobre algunos

de los registros. Cuando se selecciona la opción “cambios” el sistema pregunta

que registro se quiere modifcar (numérico), para posteriormente preguntar

que campo en partcular se quiere ajustar (Nombre, Edad, etc.).

e. La opción “Consultas” presenta el siguiente submenú:

◦ Por Nombre (presenta en forma completa todos lo registros que coincidan)

◦ Por Registro (presenta solo el registro solicitado)

◦ Total (presenta todos los registros)

f. La opción “Salir” cierra el programa.





« Última modificación: 1 Abril 2016, 23:38 pm por fst091 » En línea

LaiaxanIV

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Re: Como eliminar la casilla de un arreglo en java?
« Respuesta #1 en: 1 Abril 2016, 23:20 pm »

Buenass!!!
Te has planteado usar ArrayLists? O tenéis restricción de que estructuras de datos podéis usar?
Si no, siempre puedes modificar las estructuras para que contengan un valor imposible, si lo contienen a la hora de mostrar no se mostrarian.
Para hacer un cambio, después de conocer el número de registro tienes que modificar la posición de cada vector dependiendo de la opción que haya elegido para modificar.
Me explico si el usuario elige el registro r=1 y la opcion nombre tendras que hacer nombre[r] = sc.nextLine();

Para las consultoras tendras que hacer un print de todos los vectores que tienes en el caso del total.
Por otra parte, si se elige por nombre, necesitaras un condicional para ver si la posición que estas consultando contiene o no el nombre que ha introducido el usuario. Si coinciden tendras que sacar por pantalla los datos.

En ambos casos necesitas recorrer de principio a fin los vectores.


« Última modificación: 1 Abril 2016, 23:29 pm por LaiaxanIV » En línea

fst091

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Como eliminar la casilla de un arreglo en java?
« Respuesta #2 en: 1 Abril 2016, 23:35 pm »

Solo puedo usar lo que vi en el curso, y no se como usar los arraylist  :-( , por ende no puedo usarlos, podrias darme un ejemplo de como recorrer todos en la opción consultas, gracias
En línea

LaiaxanIV

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Re: Como eliminar la casilla de un arreglo en java?
« Respuesta #3 en: 1 Abril 2016, 23:53 pm »

Si claro!
Supongamos que tienes que hacer un printe del total y tienes lo siguiente:
Código:
int MAX_SIZE = 30;
        int[] oc = new int[MAX_SIZE]; //Este lo usaremos para saber si una posición está o no ocupada.
        for(int i = 0; i < MAX_SIZE; ++i) oc[i] = -1; //-1 querra decir que la posición no ha sido ocupada.
        String[] name = new String[MAX_SIZE];
        int[] age = new int[MAX_SIZE];
        double[] height = new double[MAX_SIZE];
        
        for(int i = 0; i < MAX_SIZE; ++i){
            if(oc[i] != -1){
                System.out.println("Nombre: " + name[i]);
                System.out.println("Edad: " + age[i]);
                System.out.println("Altura: " + height[i]);
            }
        }

Si usas este metodo, usando oc para conocer si una posición ha sido usada o no, acuerdate que al dar de baja o al dar de alta, tienes que poner la posicion correspondiente un 0 o un -1.
Para hacer el caso del mostrar por nombre, en la condición de dentro del for, tendrías que añadir
Código:
 
if(oc[i] != -1 && name[i] == nombre)
donde nombre es el nombre que el usuario introduce.

Pruebalo, si tienes cualquier pregunta no dudes en hacérnosla saber.
« Última modificación: 1 Abril 2016, 23:55 pm por LaiaxanIV » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como agregar un arreglo de tipo persona en un Archivo en java.
Java
rub'n 7 8,111 Último mensaje 30 Marzo 2011, 17:10 pm
por rub'n
eliminar valor en un arreglo
Java
jexus 1 1,777 Último mensaje 12 Octubre 2013, 14:48 pm
por ThinkByYourself
Ayuda de como eliminar un valor contenido en un arreglo.
Java
Langosta Sexual 3 2,566 Último mensaje 6 Febrero 2015, 04:50 am
por Usuario Invitado
Duda - Como eliminar numeros repetidos de un arreglo en C?
Programación C/C++
palacio29 9 23,740 Último mensaje 30 Agosto 2019, 23:52 pm
por KrishCM
Como puedo serializar un arreglo de objetos en java
Java
Soul_Eater 4 4,258 Último mensaje 9 Mayo 2017, 02:58 am
por Soul_Eater
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines