Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save AshleyChovet/b227e8b6091b1c6a02981a82fb325bfb to your computer and use it in GitHub Desktop.

Select an option

Save AshleyChovet/b227e8b6091b1c6a02981a82fb325bfb to your computer and use it in GitHub Desktop.
Proceso AgendaDeContacto
// Declaración de arreglos para almacenar datos de contactos
// Se define personas de 20 posiciones para almacenar datos
Dimension Personas[20]
Dimension Telefonos[20]
Dimension Direcciones[20]
// Definición de variables
Definir Personas, Telefonos, Direcciones Como Caracter
Definir Cantidad, i, Indice Como Entero
Definir BuscarUsuario, NombreModificar, RespuestaModificar, VerLista, RespuestaAgregar Como Caracter
Definir Encontrado Como Logico
Definir NombreUsuario Como Caracter
//Autor: Carlos Luis Mateo
// CONTACTOS INICIALES
// Se cargan datos predefinidos en la agenda
Personas[1] <- "Ricardo Mendez"
Telefonos[1] <- "829-792-3287"
Direcciones[1] <- "La Romana"
Personas[2] <- "Ashley Chovet"
Telefonos[2] <- "809-229-9842"
Direcciones[2] <- "Santo Domingo"
Personas[3] <- "Johan Manuel"
Telefonos[3] <- "849-373-6045"
Direcciones[3] <- "San Pedro"
Personas[4] <- "Carlos Luis"
Telefonos[4] <- "829-944-1128"
Direcciones[4] <- "Higüey"
Personas[5] <- "Wilmer Rodriguez"
Telefonos[5] <- "809-675-3354"
Direcciones[5] <- "La Vega"
Personas[6] <- "RAFIERY JAVIER "
Telefonos[6] <- "809-234-6654"
Direcciones[6] <- "Santiago"
Cantidad <- 6 // Cantidad inicial de contactos
// Autor: Wilmer Rodriguez
// AGREGAR CONTACTOS
// Permite al usuario añadir nuevos contactos
RespuestaAgregar <- "si"
Mientras RespuestaAgregar = "si" Y Cantidad < 19 Hacer
Imprimir "¿Deseas agregar un nuevo contacto? (si/no)"
Leer RespuestaAgregar
Si RespuestaAgregar = "si" Entonces
Cantidad <- Cantidad + 1 // Aumenta la cantidad de contactos
Imprimir "Digite el nombre:"
Leer Personas[Cantidad]
Imprimir "Digite el teléfono:"
Leer Telefonos[Cantidad]
Imprimir "Digite la dirección:"
Leer Direcciones[Cantidad]
Imprimir "Contacto agregado correctamente."
FinSi
FinMientras
// Autor: Johan Manuel
// BUSCAR CONTACTO
// Busca un contacto por nombre
Imprimir ""
Imprimir "Escriba el nombre del contacto que desea buscar"
Leer BuscarUsuario
Encontrado <- Falso
Para i <- 1 Hasta Cantidad Hacer
Si Personas[i] = BuscarUsuario Entonces
Encontrado <- Verdadero
Indice <- i // Guarda la posición del contacto encontrado
FinSi
FinPara
Si Encontrado Entonces
Imprimir "Usuario encontrado en posición ", Indice
Imprimir "Teléfono: ", Telefonos[Indice]
Imprimir "Dirección: ", Direcciones[Indice]
SiNo
Imprimir "El usuario que buscas no existe."
FinSi
// Autor: Ashley Chovet
// MODIFICAR CONTACTO
// Permite cambiar los datos de un contacto existente
Imprimir ""
Imprimir "¿Deseas modificar un contacto? (si/no)"
Leer RespuestaModificar
Si RespuestaModificar = "si" Entonces
Imprimir "Digite el nombre del contacto que desea modificar"
Leer NombreModificar
Encontrado <- Falso
Para i <- 1 Hasta Cantidad Hacer
Si Personas[i] = NombreModificar Entonces
Encontrado <- Verdadero
Indice <- i
FinSi
FinPara
Si Encontrado Entonces
Imprimir "Nuevo nombre:"
Leer Personas[Indice]
Imprimir "Nuevo teléfono:"
Leer Telefonos[Indice]
Imprimir "Nueva dirección:"
Leer Direcciones[Indice]
Imprimir "Contacto modificado correctamente."
SiNo
Imprimir "El contacto no existe."
FinSi
FinSi
//Autor: Rafiery Javier
// VER LISTA DE CONTACTOS
// Muestra todos los contactos guardados
Imprimir ""
Imprimir "¿Deseas ver la lista de contactos? (si/no)"
Leer VerLista
Si VerLista = "si" Entonces
Imprimir ""
Imprimir "LISTA DE CONTACTOS:"
Para i <- 1 Hasta Cantidad Hacer
Imprimir i, " - ", Personas[i]
Imprimir " Tel: ", Telefonos[i]
Imprimir " Dir: ", Direcciones[i]
FinPara
FinSi
//Autor: Joaquin Ricardo Mendez
// ELIMINAR CONTACTO
// Elimina un contacto según su posición
Imprimir ""
Imprimir "Digite el número de posición del contacto que desea eliminar:"
Leer Indice
Si Indice >= 1 Y Indice <= Cantidad Entonces
NombreUsuario <- Personas[Indice] // Guarda el nombre antes de eliminar
// Desplaza los elementos para llenar el espacio eliminado
Si Indice < Cantidad Entonces
Para i <- Indice Hasta Cantidad - 1 Hacer
Personas[i] <- Personas[i + 1]
Telefonos[i] <- Telefonos[i + 1]
Direcciones[i] <- Direcciones[i + 1]
FinPara
FinSi
Cantidad <- Cantidad - 1 // Reduce la cantidad de contactos
Imprimir "El usuario ", NombreUsuario, " fue eliminado correctamente."
SiNo
Imprimir "Posición inválida."
FinSi
// LISTA FINAL
// Muestra los contactos actualizados
Imprimir ""
Imprimir "LISTA FINAL:"
Para i <- 1 Hasta Cantidad Hacer
Imprimir i, " - ", Personas[i]
Imprimir " Tel: ", Telefonos[i]
Imprimir " Dir: ", Direcciones[i]
FinPara
FinProceso
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment