Skip to content

Commit 98ff0ea

Browse files
authored
Merge pull request mouredev#1908 from Pancratzia/main
#8 - javascript
2 parents c0a90ef + a941ef6 commit 98ff0ea

File tree

1 file changed

+125
-0
lines changed

1 file changed

+125
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
/*
2+
* EJERCICIO:
3+
* Explora el concepto de clase y crea un ejemplo que implemente un inicializador,
4+
* atributos y una función que los imprima (teniendo en cuenta las posibilidades
5+
* de tu lenguaje).
6+
* Una vez implementada, créala, establece sus parámetros, modifícalos e imprímelos
7+
* utilizando su función.
8+
*
9+
* DIFICULTAD EXTRA (opcional):
10+
* Implementa dos clases que representen las estructuras de Pila y Cola (estudiadas
11+
* en el ejercicio número 7 de la ruta de estudio)
12+
* - Deben poder inicializarse y disponer de operaciones para añadir, eliminar,
13+
* retornar el número de elementos e imprimir todo su contenido.
14+
*
15+
*/
16+
17+
/************* PARTE 1 *************/
18+
19+
class Perro {
20+
constructor(nombre = "Tiffany", raza = "Poodle", edad = 8) {
21+
this._nombre = nombre;
22+
this._raza = raza;
23+
this._edad = edad;
24+
}
25+
26+
get nombre() {
27+
return this._nombre;
28+
}
29+
30+
set nombre(nombre) {
31+
this._nombre = nombre;
32+
}
33+
34+
get raza() {
35+
return this._raza;
36+
}
37+
38+
set raza(raza) {
39+
this._raza = raza;
40+
}
41+
42+
get edad() {
43+
return this._edad;
44+
}
45+
46+
set edad(edad) {
47+
this._edad = edad;
48+
}
49+
50+
toString() {
51+
return `Nombre: ${this._nombre}
52+
Raza: ${this._raza}
53+
Edad: ${this._edad}`;
54+
}
55+
}
56+
57+
const perro = new Perro();
58+
console.log(perro.toString());
59+
60+
console.log("Pero espera... ¡ES EL CUMPLEAÑOS DE TIFFANY!");
61+
perro.edad = 9;
62+
console.log(perro.toString());
63+
64+
/************* DIFICULTAD EXTRA *************/
65+
66+
class Pila {
67+
constructor() {
68+
this.pila = [];
69+
}
70+
71+
push(elemento) {
72+
this.pila.push(elemento);
73+
}
74+
75+
pop() {
76+
this.pila.pop();
77+
}
78+
79+
size() {
80+
return this.pila.length;
81+
}
82+
83+
print() {
84+
return this.pila;
85+
}
86+
}
87+
88+
const pila = new Pila();
89+
pila.push("hola");
90+
pila.push("mundo");
91+
pila.push("!");
92+
console.log(pila.print());
93+
console.log(pila.size());
94+
95+
class Cola {
96+
constructor() {
97+
this.cola = [];
98+
}
99+
100+
encolar(elemento) {
101+
this.cola.push(elemento);
102+
}
103+
104+
desencolar() {
105+
this.cola.shift();
106+
}
107+
108+
size() {
109+
return this.cola.length;
110+
}
111+
112+
print() {
113+
return this.cola;
114+
}
115+
}
116+
117+
const cola = new Cola();
118+
cola.encolar("hola");
119+
cola.encolar("mundo");
120+
cola.encolar("!");
121+
cola.encolar("Soy");
122+
cola.encolar("una");
123+
cola.encolar("cola");
124+
console.log(cola.print());
125+
console.log(cola.size());

0 commit comments

Comments
 (0)