Skip to content

Commit 4fb10c9

Browse files
authored
Merge pull request mouredev#5857 from eulogioep/main
#18 - Kotlin
2 parents 4f2a815 + 958043e commit 4fb10c9

File tree

1 file changed

+61
-0
lines changed

1 file changed

+61
-0
lines changed
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
fun main() {
2+
// Creamos un conjunto mutable
3+
val conjunto = mutableListOf("A", "B", "C")
4+
println("Conjunto inicial: $conjunto")
5+
6+
// Añade un elemento al final
7+
conjunto.add("D")
8+
println("Después de añadir al final: $conjunto")
9+
10+
// Añade un elemento al principio
11+
conjunto.add(0, "Z")
12+
println("Después de añadir al principio: $conjunto")
13+
14+
// Añade varios elementos en bloque al final
15+
conjunto.addAll(listOf("E", "F", "G"))
16+
println("Después de añadir en bloque al final: $conjunto")
17+
18+
// Añade varios elementos en bloque en una posición concreta
19+
conjunto.addAll(2, listOf("X", "Y"))
20+
println("Después de añadir en bloque en posición 2: $conjunto")
21+
22+
// Elimina un elemento en una posición concreta
23+
conjunto.removeAt(3)
24+
println("Después de eliminar el elemento en posición 3: $conjunto")
25+
26+
// Actualiza el valor de un elemento en una posición concreta
27+
conjunto[1] = "W"
28+
println("Después de actualizar el elemento en posición 1: $conjunto")
29+
30+
// Comprueba si un elemento está en un conjunto
31+
println("¿El conjunto contiene 'F'? ${conjunto.contains("F")}")
32+
33+
// Elimina todo el contenido del conjunto
34+
conjunto.clear()
35+
println("Después de eliminar todo el contenido: $conjunto")
36+
37+
// DIFICULTAD EXTRA
38+
val conjunto1 = setOf(1, 2, 3, 4, 5)
39+
val conjunto2 = setOf(4, 5, 6, 7, 8)
40+
41+
// Unión
42+
val union = conjunto1.union(conjunto2)
43+
println("Unión: $union")
44+
45+
// Intersección
46+
val interseccion = conjunto1.intersect(conjunto2)
47+
println("Intersección: $interseccion")
48+
49+
// Diferencia
50+
val diferencia = conjunto1.subtract(conjunto2)
51+
println("Diferencia (conjunto1 - conjunto2): $diferencia")
52+
53+
// Diferencia simétrica
54+
val diferenciaSimetrica = conjunto1.symmetricDifference(conjunto2)
55+
println("Diferencia simétrica: $diferenciaSimetrica")
56+
}
57+
58+
// Función de extensión para calcular la diferencia simétrica
59+
fun Set<Int>.symmetricDifference(other: Set<Int>): Set<Int> {
60+
return (this subtract other) union (other subtract this)
61+
}

0 commit comments

Comments
 (0)