Hola, necesito ayuda con una tarea, es un .bat

Iniciado por nachobb17, 17 Octubre 2021, 23:48 PM

0 Miembros y 1 Visitante están viendo este tema.

nachobb17

esta es la consigna:
Deberán crear un sistema desarrollado en MS-DOS que permita guardar información de una agenda personal.
La agenda guarda información de contactos que son: Nombres, Apellidos, telf móvil.
Esa info debe quedar guardada en un archivo en disco.
El programa debe comenzar con un menú con las siguientes opciones:
1- Ingresar contacto.
2- Modificar un contacto.
3- Eliminar un contacto.
4- Buscar contacto por nombre y apellido.
5- Guardar contactos.
6- Salir.

Cada utilidad se debe programar en un método o función y cada integrante del equipo debe programar una funcionalidad diferente.
Al comenzar el programa, lo primero es cargar en memoria en un array de objetos, los contactos que estén guardados en el archivo.
Los ingresos y modificaciones se realizan en el array. Es decisión del usuario guardar los datos en el archivo nuevamente mediante el punto 5.

Punto 1- Ingresar contacto. Se piden los datos y SE VALIDA que no exista un contacto con ese teléfono móvil. Sólo se permite el ingreso SI NO EXISTE un contacto con ese móvil.

Punto 2- Modificar un contacto. Pide el nro de teléfono móvil, lo busca en el array y muestra todos los datos permitiendo cambiar cualquiera de ellos. IMPORTANTE: si cambia el nro de teléfono móvil, se debe validar que el nuevo nro no exista en otro contacto.


solo es hacer el pto 2 ya que el 1 lo tengo hacho y aqui lo pongo:

    echo 1 - Ingresar contacto.
    echo 2 - Modificar un contacto
    echo 3 - Eliminar un contacto.
    echo 4 - Buscar contacto por nombre y apellido.
    echo 5 - Guardar contactos.
    echo 6 - Salir.
    echo.
    set /p opc=Indique su opcion numerica aqui (cuidado con los tildes):

    if "%opc%" == "1" goto opc_1
    if "%opc%" == "2" goto opc_2
    if "%opc%" == "3" goto opc_3
    if "%opc%" == "4" goto opc_4
    if "%opc%" == "5" goto opc_5
    if "%opc%" == "6" goto salir
    if "%opc%" == "" goto nada
    goto error
:nada
cls
   echo Debe ingresar una de las opciones en pantalla
   echo _____________________________________________
   echo Presione enter para continuar
pause>null
cls
goto menu

:error
   cls
   echo Debe ingresar una de las opciones en pantalla
   echo _____________________________________________
   echo Presione enter para continuar
   pause>null
goto menu
:error2
cls
echo no puede ingresar un contacto repetido
echo ______________________________________
echo Presione enter para continuar
pause>null
goto menu
:opc_1
set/a n= %n%+1
   set/p array[%n%].Nombre=Nombre:
   set/p array[%n%].Apellido=Apellido:
   set/p array[%n%].Telefono=Telefono:
   set xd=!array[%n%].Telefono!
   if %n% == 0 goto eco
FOR /L %%i IN (0,1,%n%) DO(if %xd% == !array[%%i]! goto error2)
goto eco2

:OPC_2








:eco
echo !array[0].Nombre!
echo !array[0].Apellido!
echo !array[0].Telefono!   

pause
goto array2
:eco2
for /L %%i in (0,1,%n%) do(
echo !array[%%i].Nombre!
echo !array[%%i].Apellido!
echo !array[%%i].Telefono!   
)
pause
goto array2
:salir
cls
echo Gracias por utilizar nuestros servicios
pause