Skip to content

Commit 4cb9095

Browse files
authored
Merge pull request mouredev#7367 from fernandog25/main
#3 - Javascript
2 parents e20567a + 2559b67 commit 4cb9095

File tree

1 file changed

+162
-0
lines changed

1 file changed

+162
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
//Array
2+
var lista = [4,6,1,7,5,8,2,3]
3+
console.log("Lista original: " + lista)
4+
//Inserción
5+
lista.push(0) //Agrego un elemento al final de la lista
6+
console.log("Nuevo elemento: " + lista)
7+
lista.unshift(9) //Agrego un elemento al principio de la lista
8+
console.log("Nuevo elemento: " + lista)
9+
lista.splice(2,0,10) //Agrego el 10 en la posición 3
10+
console.log("Nuevo elemento: " + lista)
11+
//Borrado
12+
lista.pop() //Elimino el ultimo elemento de la lista
13+
console.log("Elemento borrado: " + lista)
14+
lista.shift() //Elimino el primer elemento de la lista
15+
console.log("Elemento borrado: " + lista)
16+
lista.splice(3,1) //Elimino el elemento en la posición 4
17+
console.log("Elemento borrado: " + lista)
18+
//Actualización
19+
lista[6] = 9 //Reemplazo el elemento de la posición 7
20+
console.log("Lista actualizada: " + lista)
21+
//Ordenación
22+
lista.sort(function(a,b){return a-b}) //Ordeno la lista de menor a mayor
23+
console.log("Lista ordenada: " + lista)
24+
lista.reverse(function(a,b){return a-b}) //Ordeno la lista de mayor a menor
25+
console.log("Lista ordenada: " + lista)
26+
27+
//Objet
28+
var persona =
29+
{
30+
nombre: "Fernando",
31+
apellido: "Gomez",
32+
edad: 29
33+
}
34+
console.log(persona)
35+
//Inserción
36+
persona["ciudad"] = "Rosario"
37+
console.log("Objeto con nueva propiedad: " + persona)
38+
//Borrado
39+
delete persona.apellido
40+
console.log("Objeto con propiedad borrada: " + persona)
41+
//Actualización
42+
persona.nombre = "Fer"
43+
console.log("Objeto con propiedad actualizada: " + persona)
44+
45+
//Map
46+
var mapa = new Map()
47+
//Inserción
48+
mapa.set("rojo", "red")
49+
mapa.set("verde", "green")
50+
mapa.set("azul", "blue")
51+
console.log(mapa)
52+
//Borrado
53+
mapa.delete("verde")
54+
console.log(mapa)
55+
//Actualización
56+
mapa.set("rojo", "vermelho")
57+
console.log(mapa)
58+
59+
//Set
60+
var numeros = new Set([4,6,1,7])
61+
console.log(numeros)
62+
//Inserción
63+
numeros.add(0)
64+
console.log(numeros)
65+
//Borrado
66+
numeros.delete(1)
67+
console.log(numeros)
68+
69+
/*DIFICULTAD EXTRA (opcional):
70+
Crea una agenda de contactos por terminal.
71+
- Debes implementar funcionalidades de búsqueda, inserción, actualización
72+
y eliminación de contactos.
73+
- Cada contacto debe tener un nombre y un número de teléfono.
74+
- El programa solicita en primer lugar cuál es la operación que se quiere realizar,
75+
y a continuación los datos necesarios para llevarla a cabo.
76+
- El programa no puede dejar introducir números de teléfono no númericos y con más
77+
de 11 dígitos (o el número de dígitos que quieras).
78+
- También se debe proponer una operación de finalización del programa.*/
79+
80+
81+
var agenda = new Map()
82+
var nombre
83+
var telefono
84+
var op
85+
86+
import readline from 'readline'
87+
88+
89+
function obtenerInput(pregunta)
90+
{
91+
const rl = readline.createInterface
92+
(
93+
{
94+
input: process.stdin, output: process.stdout
95+
})
96+
return new Promise((resolve) =>
97+
{ rl.question(pregunta, (respuesta) =>
98+
{ resolve(respuesta); rl.close();
99+
100+
});
101+
});
102+
}
103+
104+
105+
console.log("\n1- Buscar contacto")
106+
console.log("2- Insertar contacto")
107+
console.log("3- Actualizar contacto")
108+
console.log("4- Eliminar contacto")
109+
console.log("5- Salir")
110+
111+
112+
do
113+
{
114+
op = await obtenerInput('Por favor, ingresa un valor: ')
115+
116+
switch (op)
117+
{
118+
case "1":
119+
nombre = await obtenerInput("Ingrese nombre a buscar: ")
120+
if (agenda.get(nombre))
121+
console.log("El telefono de " + nombre + " es: " + agenda.get(nombre))
122+
else console.log("El contacto " + nombre + " no exixte en la agenda")
123+
break
124+
case "2":
125+
nombre = await obtenerInput('Nombre: ')
126+
telefono = await obtenerInput('Telefono: ')
127+
if (!isNaN(telefono) && telefono.length > 0 && telefono.length < 12)
128+
{
129+
agenda.set(nombre, telefono)
130+
console.log("El contacto fue credo con exito")
131+
}
132+
else console.log("Tiene que ingresar un numero con menos de 12 digitos")
133+
break
134+
case "3":
135+
nombre = await obtenerInput('Ingrese el nombre del contacto a actualizar: ')
136+
if (agenda.get(nombre))
137+
{
138+
telefono = await obtenerInput('Ingrese el nuevo numero de telefono: ')
139+
if (!isNaN(telefono) && telefono.length > 0 && telefono.length < 12)
140+
{
141+
agenda.set(nombre, telefono)
142+
console.log("El contacto fue actualizado con exito")
143+
}
144+
else console.log("Tiene que ingresar un numero con menos de 12 digitos")
145+
}
146+
else console.log("El contacto " + nombre + " no exixte en la agenda")
147+
break
148+
case "4":
149+
nombre = await obtenerInput('Ingrese el nombre del contacto a eliminar: ')
150+
if (agenda.get(nombre))
151+
{
152+
agenda.delete(nombre)
153+
console.log("El contacto " + nombre + " fue eliminado con éxito")
154+
}
155+
else console.log("El contacto " + nombre + " no exixte en la agenda")
156+
break
157+
}
158+
}while (op != 5)
159+
160+
161+
162+

0 commit comments

Comments
 (0)