Skip to content

Commit 9228233

Browse files
authored
Merge pull request mouredev#7665 from MartinZeta/main
#00 - Python
2 parents 5f22e56 + ad179c5 commit 9228233

File tree

2 files changed

+218
-0
lines changed
  • Roadmap
    • 00 - SINTAXIS, VARIABLES, TIPOS DE DATOS Y HOLA MUNDO/python
    • 01 - OPERADORES Y ESTRUCTURAS DE CONTROL/python

2 files changed

+218
-0
lines changed
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
"""
2+
# #00 SINTAXIS, VARIABLES, TIPOS DE DATOS Y HOLA MUNDO
3+
> #### Dificultad: Fácil | Publicación: 26/12/23 | Corrección: 02/01/24
4+
5+
## Ejercicio
6+
7+
```
8+
/*
9+
* ¿Preparad@ para aprender o repasar el lenguaje de programación que tú quieras?
10+
* - Recuerda que todas las instrucciones de participación están en el
11+
* repositorio de GitHub.
12+
*
13+
* Lo primero... ¿Ya has elegido un lenguaje?
14+
* - No todos son iguales, pero sus fundamentos suelen ser comunes.
15+
* - Este primer reto te servirá para familiarizarte con la forma de participar
16+
* enviando tus propias soluciones.
17+
*
18+
* EJERCICIO:
19+
* - Crea un comentario en el código y coloca la URL del sitio web oficial del
20+
* lenguaje de programación que has seleccionado.
21+
* - Representa las diferentes sintaxis que existen de crear comentarios
22+
* en el lenguaje (en una línea, varias...).
23+
* - Crea una variable (y una constante si el lenguaje lo soporta).
24+
* - Crea variables representando todos los tipos de datos primitivos
25+
* del lenguaje (cadenas de texto, enteros, booleanos...).
26+
* - Imprime por terminal el texto: "¡Hola, [y el nombre de tu lenguaje]!"
27+
*
28+
* ¿Fácil? No te preocupes, recuerda que esta es una ruta de estudio y
29+
* debemos comenzar por el principio.
30+
*/
31+
```
32+
#### Tienes toda la información extendida sobre el roadmap de retos de programación en **[retosdeprogramacion.com/roadmap](https://retosdeprogramacion.com/roadmap)**.
33+
34+
Sigue las **[instrucciones](../../README.md)**, consulta las correcciones y aporta la tuya propia utilizando el lenguaje de programación que quieras.
35+
36+
> 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)**.
37+
"""
38+
39+
# https://www.python.org/
40+
41+
# Comentario en una sola linea
42+
43+
"""
44+
Comentario
45+
en
46+
varias
47+
lineas
48+
49+
"""
50+
51+
'''
52+
Otra forma de hacer
53+
comentarios en multiples
54+
lineas
55+
56+
'''
57+
58+
my_variable = "Mi variable"
59+
60+
61+
MY_CONSTANT = "Mi constante" # por convencion
62+
63+
# Datos primitivos
64+
my_int = 1
65+
my_float = 1.5
66+
my_bool = True
67+
my_bool = False
68+
my_string = 'Mi cadena de texto'
69+
70+
# Imprimir
71+
print("¡Hola, Python!")
72+
73+
# Tipos
74+
print(type(my_string))
75+
print(type(my_int))
76+
print(type(my_float))
77+
print(type(my_bool))
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
2+
"""
3+
4+
# #01 OPERADORES Y ESTRUCTURAS DE CONTROL
5+
> #### Dificultad: Fácil | Publicación: 02/01/24 | Corrección: 08/01/24
6+
7+
## Ejercicio
8+
9+
```
10+
/*
11+
* EJERCICIO:
12+
* - Crea ejemplos utilizando todos los tipos de operadores de tu lenguaje:
13+
* Aritméticos, lógicos, de comparación, asignación, identidad, pertenencia, bits...
14+
* (Ten en cuenta que cada lenguaje puede poseer unos diferentes)
15+
* - Utilizando las operaciones con operadores que tú quieras, crea ejemplos
16+
* que representen todos los tipos de estructuras de control que existan
17+
* en tu lenguaje:
18+
* Condicionales, iterativas, excepciones...
19+
* - Debes hacer print por consola del resultado de todos los ejemplos.
20+
*
21+
* DIFICULTAD EXTRA (opcional):
22+
* Crea un programa que imprima por consola todos los números comprendidos
23+
* entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3.
24+
*
25+
* Seguro que al revisar detenidamente las posibilidades has descubierto algo nuevo.
26+
*/
27+
```
28+
#### Tienes toda la información extendida sobre el roadmap de retos de programación en **[retosdeprogramacion.com/roadmap](https://retosdeprogramacion.com/roadmap)**.
29+
30+
Sigue las **[instrucciones](../../README.md)**, consulta las correcciones y aporta la tuya propia utilizando el lenguaje de programación que quieras.
31+
32+
> 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)**.
33+
34+
"""
35+
36+
"""
37+
OPERADORES
38+
"""
39+
40+
#Operadores aritmeticos
41+
print(f"Suma: 24 + 6 = {24 + 6}")
42+
print(f"Resta: 24 - 6 = {24 - 6}")
43+
print(f"Multiplicacion: 24 * 6 = {24 * 6}")
44+
print(f"Division: 24 / 6 = {24 / 6}")
45+
print(f"Division Entera: 24 // 6 = {24 // 6}")
46+
print(f"Resto: 24 % 6 = {24 % 6}")
47+
print(f"Exponente: 24 ** 6 = {24 ** 6}")
48+
49+
#Operadores de comparacion
50+
print(f"Mayor: 24 > 6 = {24 > 6}")
51+
print(f"Menor: 24 < 6 = {24 < 6}")
52+
print(f"Mayor o igual: 24 >= 6 = {24 >= 6}")
53+
print(f"Menor o igual: 24 <= 6 = {24 <= 6}")
54+
print(f"Igual: 24 == 6 = {24 == 6}")
55+
print(f"Diferente: 24 != 6 = {24 != 6}")
56+
57+
#Operadores logicos
58+
print(f"AND: 10 + 3 == 13 and 3 + 2 == 5 = {10 + 3 == 13 and 3 + 2 == 5}") #Si ambos true, devuelve true
59+
print(f"OR: 10 + 3 == 13 or 3 + 2 == 5 = {10 + 3 == 14 or 3 + 2 == 6}") #Si alguno true, devuelve true
60+
print(f"NOT: not 10 + 3 == 14 = {not 10 + 3 == 13}") #Si alguno true, devuelve false
61+
62+
#Operadores de asignacion
63+
64+
my_number = 10 #asignacion
65+
print(f"my_number = 10 = {my_number}")
66+
my_number += 10 #suma y asignacion
67+
print(f"my_number += 10 = {my_number}")
68+
my_number -= 10 #resta y asignacion
69+
print(f"my_number -= 10 = {my_number}")
70+
my_number *= 10 #multiplicacion y asignacion
71+
print(f"my_number *= 10 = {my_number}")
72+
my_number /= 10 #division y asignacion
73+
print(f"my_number /= 10 = {my_number}")
74+
my_number %= 10 #modulo y asignacion
75+
print(f"my_number %= 10 = {my_number}")
76+
77+
#Operadores de identidad: is y is not es un operador de comparacion que se utiliza para comprobar si dos variables son la misma o no
78+
my_new_number = my_number
79+
print(f"my_number is my_new_number es {my_number is my_new_number}")
80+
my_new_number = 1.0
81+
print(f"my_number is my_new_number es {my_number is my_new_number}")
82+
print(f"my_number is not my_new_number es {my_number is not my_new_number}")
83+
84+
#Operadores de pertenencia: in y not in es un operador de comparacion que se utiliza para comprobar si un elemento esta en una secuencia
85+
print(f"'m' in 'martin' = {'m' in 'martin'}")
86+
print(f"'m' not in 'martin' = {'m' not in 'martin'}")
87+
88+
#Operadores de bit
89+
a = 10 # 1010
90+
b = 3 # 0011
91+
92+
print(f"AND: a & b = {a & b}") # 0010
93+
print(f"OR: a | b = {a | b}") # 1011
94+
print(f"XOR: a ^ b = {a ^ b}") # 1001
95+
print(f"NOT: ~a = {~a}") # -11
96+
print(f"DESPLAZAMIENTO A LA IZQUIERDA: a << 2 = {a << 2}") # 40
97+
print(f"DESPLAZAMIENTO A LA DERECHA: a >> 2 = {a >> 2}") # 2
98+
99+
100+
"""
101+
ESTRUCTURAS DE CONTROL
102+
"""
103+
104+
#Condicionales
105+
my_string = "Zeta"
106+
107+
if my_string == "Martin":
108+
print("my_string es 'Martin'")
109+
elif my_string == "Zeta":
110+
print("my_string es 'Zeta'")
111+
else:
112+
print("my_string no es 'Martin' ni 'Zeta'")
113+
114+
#Iterativas o bucles
115+
116+
for i in range(11):
117+
print(i)
118+
119+
i = 0
120+
121+
while i <= 10:
122+
print(i)
123+
i += 1
124+
125+
#Manejo de excepciones
126+
try:
127+
# Código que podría causar una excepción
128+
print(10 / 0)
129+
except:
130+
print("Se ha producido un error")
131+
finally:
132+
print("Ha finalizado el manejo de excepciones")
133+
134+
135+
"""
136+
EXTRAS
137+
"""
138+
139+
for number in range(10, 56):
140+
if number % 2 == 0 and number != 16 and number % 3 != 0:
141+
print(number)

0 commit comments

Comments
 (0)