Skip to content

Commit 9318c3b

Browse files
committed
2 parents e5c4c29 + 2d22a95 commit 9318c3b

File tree

18 files changed

+2310
-1049
lines changed

18 files changed

+2310
-1049
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# URL Python: https://www.python.org/
2+
3+
# Esto es un comentario de una lnea
4+
5+
"""
6+
Esto es un comentario de varias linea
7+
"""
8+
9+
# Variables
10+
numero : int = 10 # Variable
11+
CONSTANTE: float = 14.15 # Constante
12+
13+
#Tipos de datos
14+
letra : str = "A" # String
15+
verdadero : bool = True # Boolean
16+
falso : bool = False # Boolean
17+
numero_decimal : float = 10.5 # Float
18+
numero_entero : int = 10 # Integer
19+
desconocido : None = None # None
20+
21+
#Print
22+
print("Hola, Python")
23+
24+
25+
26+
27+
28+
29+
30+
31+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# https://www.python.org
2+
3+
4+
# Este es un comentario en una sola linea
5+
6+
7+
"""
8+
Esto es un comentario
9+
en varias lineas
10+
"""
11+
12+
13+
'''
14+
Esta es otra sintaxis
15+
que te permite comentar
16+
en varias lineas
17+
'''
18+
19+
20+
variable_string = "Hello Python!" # Variable de tipo string
21+
22+
variable_string2 = 'Hello Python!' # Variable de tipo string - second option
23+
24+
variable_int = 22 # Variable de tipo int
25+
26+
variable_float = 2.1 # Variable de tipo float
27+
28+
variable_bool = True # Variable de tipo bool (True or False)
29+
30+
variable_list = [1, 2, 3, 4, 5] # Variable de tipo list
31+
32+
variable_dict = {"Texto1": "Texto2", "Texto3": 25} # Variable de tipo dict
33+
34+
VARIABLE_CONSTANT = "Hello Python!" # Variable de tipo constant
35+
36+
print("¡Hola, Python!")
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,201 @@
1+
""" # #04 CADENAS DE CARACTERES
2+
> #### Dificultad: Media | Publicación: 22/01/24 | Corrección: 29/01/24
3+
4+
## Ejercicio
5+
6+
7+
/*
8+
* EJERCICIO:
9+
* Muestra ejemplos de todas las operaciones que puedes realizar con cadenas de caracteres
10+
* en tu lenguaje. Algunas de esas operaciones podrían ser (busca todas las que puedas):
11+
* - Acceso a caracteres específicos, subcadenas, longitud, concatenación, repetición, recorrido,
12+
* conversión a mayúsculas y minúsculas, reemplazo, división, unión, interpolación, verificación...
13+
*
14+
* DIFICULTAD EXTRA (opcional):
15+
* Crea un programa que analice dos palabras diferentes y realice comprobaciones
16+
* para descubrir si son:
17+
* - Palíndromos
18+
* - Anagramas
19+
* - Isogramas
20+
*/
21+
22+
#### Tienes toda la información extendida sobre el roadmap de retos de programación en **[retosdeprogramacion.com/roadmap](https://retosdeprogramacion.com/roadmap)**.
23+
24+
Sigue las **[instrucciones](../../README.md)**, consulta las correcciones y aporta la tuya propia utilizando el lenguaje de programación que quieras.
25+
26+
Recuerda que cada semana se publica un nuevo ejercicio y se corrige el de la semana anterior en directo desde **[Twitch](https://twitch.tv/mouredev)**. Tienes el horario en la sección "eventos" del servidor de **[Discord](https://discord.gg/mouredev)**. """
27+
28+
#Concatenación
29+
30+
c1 = "hola"
31+
c2 = "mundo"
32+
c3 = "David Rodríguez @davidrguez98"
33+
34+
print(c1 + " " + c2)
35+
36+
#Repetición
37+
38+
print(c1 * 3)
39+
40+
#Indexación
41+
42+
print(c1[1])
43+
44+
#Longitud
45+
46+
print(len(c2))
47+
48+
#Slicing (porción)
49+
50+
print(c2[2:4])
51+
print(c2[2:])
52+
print(c2[0:2])
53+
print(c2[:2])
54+
55+
#Búsqueda
56+
57+
print("a" in c1)
58+
59+
#Reemplazo
60+
61+
print(c1.replace("o", "a"))
62+
63+
#División
64+
65+
print(c1.split("l"))
66+
67+
#Conversión a mayúsculas, minúsculas y primera en mayúsculas
68+
69+
print(c1.upper())
70+
print(c1.lower())
71+
print("David Rodríguez".title())
72+
print("David Rodríguez".capitalize()) #Solo la primera en mayúscula
73+
74+
#Eliminación de espacios al principio y al final
75+
76+
print(" David Rodríguez ".strip())
77+
78+
#Búsqueda al principio y al final
79+
80+
print(c1.startswith("ho"))
81+
print(c1.endswith("la"))
82+
83+
#Búsqueda de posición
84+
85+
print(c3.find("david"))
86+
print(c3.lower().find("david"))
87+
88+
#Búsqueda de ocurrencias
89+
90+
print(c3.lower().count("d"))
91+
92+
#Formateo
93+
94+
print("Saludo: {}, lenguaje: {}!".format(c1, c2))
95+
96+
#Interpolación
97+
98+
print(f"Saludo: {c1}, lenguaje: {c2}!")
99+
100+
# Transformación en lista de caracteres
101+
102+
print(list(c3))
103+
104+
#Transformación de lista en cadena
105+
106+
c4 = [c1, ", ", c2, "!"]
107+
print("".join(c4))
108+
109+
c4 = [c1, ", ", c2, "!"]
110+
print("-".join(c4))
111+
112+
#Transformaciones numéricas
113+
114+
c5 = "123456"
115+
c5 = int(c5)
116+
print(c5)
117+
118+
c6 = "123456.2344"
119+
c6 = float(c6)
120+
print(c6)
121+
122+
#Comprobaciones varias
123+
124+
print(c1.isalnum())
125+
print(c1.isalpha())
126+
print(c1.isnumeric())
127+
128+
129+
#DIFICULTAD EXTRA
130+
131+
"""
132+
/*
133+
134+
* DIFICULTAD EXTRA (opcional):
135+
* Crea un programa que analice dos palabras diferentes y realice comprobaciones
136+
* para descubrir si son:
137+
* - Palíndromos
138+
* - Anagramas
139+
* - Isogramas
140+
*/ """
141+
142+
from collections import Counter
143+
144+
def comparador():
145+
146+
def palindropo():
147+
invertir = word_2[::-1].lower()
148+
149+
if word_1.lower() == invertir:
150+
print("\nEs un palíndrono")
151+
else:
152+
print("\nNo es un palíndrono")
153+
154+
def anagrama():
155+
counter1 = Counter(word1.lower())
156+
counter2 = Counter(word2.lower())
157+
158+
if counter1 == counter2:
159+
print(f"\nLas palabra {word1} y {word2} son anagramas")
160+
else:
161+
print(f"\nLas palabra {word1} y {word2} no son anagramas")
162+
163+
while True:
164+
165+
print("")
166+
print("1. Comprobar si es un palíndromo.")
167+
print("2. Comprobar si es un anagrama")
168+
print("3. Comprobar si es un isograma")
169+
print("4. Salir de la comprobación.")
170+
option = input("\nElige una de las anteriores opciones: ")
171+
172+
match option:
173+
174+
case("1"):
175+
word_1 = input("Palabra 1: ")
176+
word_2 = input("Palabra 2: ")
177+
palindropo()
178+
179+
case("2"):
180+
181+
word1 = input("Primera palabra: ")
182+
word2 = input("Segunda palabra: ")
183+
anagrama()
184+
185+
case("3"):
186+
def isograma(word_3):
187+
188+
word_3 = word_3.lower()
189+
letras = set(word_3)
190+
return len(letras) == len(word_3)
191+
192+
word_3 = input("Escribe la palabra: ")
193+
if isograma(word_3):
194+
print(f"\n{word_3} es un isograma")
195+
else:
196+
print(f"\n{word_3} no es un isograma")
197+
198+
case("4"):
199+
break
200+
201+
comparador()
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
#include <iostream>
2+
3+
/*Cuando utilizamos una función que recibe los parmámetros por valor, estos valores se utilizan dentro de la función
4+
pueden variar, pero al finalizar la función y volver al programa principal volveran a tener su valor original.
5+
Si en cambio los parámetros los recibe por referencia, al variar dentro de la función también están cambiando
6+
su valor de retorno al finalizar la función (no necesariamente tienen que retornarse estos valores). */
7+
8+
struct Numeros
9+
{
10+
int numA;
11+
int numB;
12+
};
13+
14+
Numeros PorValor(Numeros num)
15+
{
16+
int aux = num.numA;
17+
num.numA = num.numB;
18+
num.numB = aux;
19+
20+
return num;
21+
}
22+
23+
Numeros PorReferencia(Numeros &num)
24+
{
25+
int aux = num.numA;
26+
num.numA = num.numB;
27+
num.numB = aux;
28+
29+
return num;
30+
}
31+
32+
int main()
33+
{
34+
Numeros num = {24, 7};
35+
printf("Valores originales:\nNumero A: %d, Numero B: %d\n\n", num.numA, num.numB);
36+
37+
PorValor(num);
38+
printf("Parametros por valor:\nNumero A: %d, Numero B: %d\n\n", num.numA, num.numB);
39+
40+
PorReferencia(num);
41+
printf("Parametros por referencia:\nNumero A: %d, Numero B: %d\n\n", num.numA, num.numB);
42+
43+
return 0;
44+
}

0 commit comments

Comments
 (0)