1+ // Ejercicio 1º
2+ // Declaramos el conjunto de datos
3+ let idolos : Array < string > = [ 'Igledev' , 'Messi' ] ;
4+ console . log ( `Mis idolos principales ${ idolos } ` ) ;
5+ // Añadir elemento al final
6+ idolos . push ( 'MoureDev' ) ;
7+ console . log ( `Añdiendo un nuevo ídolo ${ idolos } ` ) ;
8+ // Añadir elemento al principio
9+ idolos . unshift ( 'Mi novia' ) ;
10+ console . log ( `Actualizando mi primer ídolo ${ idolos } ` ) ;
11+ // Añade varios elementos en bloque al final.
12+ let idolos2 : Array < string > = [ 'Yoshi' , 'Ana Pontón' ] ;
13+ idolos . push ( ...idolos2 ) ;
14+ console . log ( `Añadiendo más ídolos ${ idolos } ` ) ;
15+ // Añade varios elementos según la posición deseada
16+ let masIdolos : Array < string > = [ 'Lahm' , 'Luis Suarez' , 'Neymar' ] ;
17+ idolos . splice ( 6 , 0 , ...masIdolos ) ;
18+ console . log ( `Añadiendo más ídolos pero con posición${ idolos } ` ) ;
19+ // Actualiza el valor de un elemento en una posición concreta
20+ idolos [ 1 ] = 'Arrian' ;
21+ console . log ( `Cambiando el ídolo${ idolos } ` ) ;
22+ // Comprueba si un elemento está en un conjunto.
23+ let idoloEncontrado = idolos . find ( idolo => idolo === 'Messi' ? true : false ) ;
24+ console . log ( `Esta el ídolo en la lista? ${ idoloEncontrado } ` ) ;
25+ // Elimina todo el contenido del conjunto
26+ idolos . length = 0 ;
27+ console . log ( `Eliminando todos los idolos: ${ idolos } ` ) ;
28+
29+ // Ejercicio Extra
30+ let numeros1 : Array < number > = [ 1 , 2 , 3 , 4 ] ;
31+ let numeros2 : Array < number > = [ 3 , 4 , 5 , 6 ] ;
32+ let union : Set < number > = new Set ( ) ;
33+
34+ // Union
35+ numeros1 . forEach ( number => union . add ( number ) ) ;
36+ numeros2 . forEach ( number => union . add ( number ) ) ;
37+ console . log ( `Unión de numeros: ${ union } ` ) ;
38+ // Interseccion
39+ let interseccion : Set < number > = new Set ( ) ;
40+ numeros1 . forEach ( n1 => {
41+ numeros2 . forEach ( n2 => {
42+ if ( n1 === n2 ) {
43+ interseccion . add ( n1 ) ;
44+ }
45+ } )
46+ } )
47+ console . log ( `Interseccion de numeros: ${ interseccion } ` ) ;
48+ // Diferencia
49+ let diferencia : Set < number > = new Set ( ) ;
50+ numeros1 . forEach ( number => diferencia . add ( number ) ) ;
51+ numeros2 . forEach ( number => {
52+ if ( diferencia . has ( number ) ) {
53+ diferencia . delete ( number ) ;
54+ }
55+ } )
56+ console . log ( `Diferencia de numeros: ${ diferencia } ` ) ;
57+ // Diferencia simetrica
58+ let difSimetrica : Set < number > = new Set ( ) ;
59+ numeros1 . forEach ( number => difSimetrica . add ( number ) )
60+ numeros2 . forEach ( number => {
61+ if ( difSimetrica . has ( number ) ) {
62+ difSimetrica . delete ( number ) ;
63+ } else {
64+ difSimetrica . add ( number ) ;
65+ }
66+ } ) ;
67+ console . log ( `Diferencia SIMÉTRICA de números: ${ difSimetrica } ` )
0 commit comments