Skip to content

Commit 190e202

Browse files
authored
Merge pull request #5969 from Javierfiestasbotella/main
#36 python
2 parents 47cac0f + 33a7deb commit 190e202

File tree

1 file changed

+134
-0
lines changed

1 file changed

+134
-0
lines changed
Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
'''* EJERCICIO:
2+
* Cada 1 de septiembre, el Hogwarts Express parte hacia la escuela
3+
* de programación de Hogwarts para magos y brujas del código.
4+
* En ella, su famoso sombrero seleccionador ayuda a los programadores
5+
* a encontrar su camino...
6+
* Desarrolla un programa que simule el comportamiento del sombrero.
7+
* Requisitos:
8+
* 1. El sombrero realizará 10 preguntas para determinar la casa del alumno.
9+
* 2. Deben existir 4 casas. Por ejemplo: Frontend, Backend, Mobile y Data.
10+
* (Puedes elegir las que quieras)
11+
* Acciones:
12+
* 1. Crea un programa que solicite el nombre del alumno y realice 10
13+
* preguntas, con cuatro posibles respuestas cada una.
14+
* 2. Cada respuesta asigna puntos a cada una de las casas (a tu elección).
15+
* 3. Una vez finalizado, el sombrero indica el nombre del alumno
16+
* y a qué casa pertenecerá (resuelve el posible empate de manera aleatoria,
17+
* pero indicándole al alumno que la decisión ha sido complicada).
18+
*/'''
19+
Frontend = 0
20+
Backend = 0
21+
Mobile = 0
22+
Data = 0
23+
24+
def puntaje(n):
25+
global Frontend
26+
global Backend
27+
global Mobile
28+
global Data
29+
if n == 1:
30+
Frontend += 3
31+
Backend += 1
32+
Mobile += 2
33+
Data += 0
34+
elif n == 2:
35+
Frontend += 1
36+
Backend += 3
37+
Mobile += 0
38+
Data += 2
39+
elif n == 3:
40+
Frontend += 1
41+
Backend += 0
42+
Mobile += 3
43+
Data += 1
44+
elif n == 4:
45+
Frontend += 0
46+
Backend += 2
47+
Mobile += 0
48+
Data += 3
49+
else:
50+
print("Respuesta no válida, por favor elige una opción entre 1 y 4.")
51+
52+
if __name__ == "__main__":
53+
name = input('Introduce tu nombre: ')
54+
print(f'{name}, voy a realizarte 10 preguntas para asignarte un perfil de desarrollador.')
55+
56+
preguntas = [
57+
'''¿Cuál es tu principal motivación al desarrollar?
58+
1) Crear interfaces visuales atractivas.
59+
2) Optimizar la lógica de procesamiento.
60+
3) Hacer que la aplicación funcione de manera fluida en dispositivos móviles.
61+
4) Analizar grandes volúmenes de datos para extraer información útil.''',
62+
63+
'''¿Qué lenguaje te gusta usar más?
64+
1) JavaScript o TypeScript.
65+
2) Python o Java.
66+
3) Swift o Kotlin.
67+
4) R o SQL.''',
68+
69+
'''¿Qué herramienta usas con más frecuencia?
70+
1) Frameworks como React o Angular.
71+
2) Servidores y bases de datos como Node.js o PostgreSQL.
72+
3) IDEs para desarrollo móvil como Android Studio o Xcode.
73+
4) Herramientas de análisis de datos como Pandas o TensorFlow.''',
74+
75+
'''¿Qué disfrutas más de tu trabajo?
76+
1) Crear experiencias de usuario.
77+
2) Gestionar y procesar datos en servidores.
78+
3) Desarrollar aplicaciones móviles que funcionen bien en diferentes dispositivos.
79+
4) Resolver problemas usando análisis de datos.''',
80+
81+
'''¿Qué tipo de bugs disfrutas resolviendo?
82+
1) Errores en el diseño o comportamiento de la interfaz.
83+
2) Fallos en la lógica del servidor o base de datos.
84+
3) Problemas de compatibilidad entre dispositivos.
85+
4) Inconsistencias en los modelos de datos o análisis.''',
86+
87+
'''¿Cómo prefieres abordar la resolución de un problema?
88+
1) Pensando en cómo afectará la experiencia del usuario.
89+
2) Optimizando los procesos en el backend para mayor eficiencia.
90+
3) Asegurando que la solución funcione en cualquier dispositivo móvil.
91+
4) Aplicando algoritmos de análisis de datos.''',
92+
93+
'''¿Qué tipo de proyecto te resulta más interesante?
94+
1) Un sitio web interactivo y visualmente impresionante.
95+
2) Una API robusta y escalable.
96+
3) Una aplicación móvil innovadora.
97+
4) Un sistema de análisis de grandes datos para insights de negocio.''',
98+
99+
'''¿Con qué tipo de tecnologías te sientes más cómodo?
100+
1) HTML, CSS, JavaScript.
101+
2) Node.js, Django, Ruby on Rails.
102+
3) Flutter, React Native.
103+
4) Spark, Hadoop.''',
104+
105+
'''¿Qué prefieres hacer en tu tiempo libre?
106+
1) Jugar con diseños y CSS para hacer una web más bonita.
107+
2) Crear una API que haga un proceso más eficiente.
108+
3) Probar nuevas aplicaciones móviles y crear las tuyas.
109+
4) Trabajar con grandes conjuntos de datos.''',
110+
111+
'''¿Cuál consideras tu principal fortaleza?
112+
1) Cuidar la experiencia y diseño visual del usuario.
113+
2) Crear procesos eficientes y escalables.
114+
3) Adaptar aplicaciones móviles para múltiples dispositivos.
115+
4) Interpretar y analizar datos complejos.'''
116+
]
117+
118+
for pregunta in preguntas:
119+
while True:
120+
try:
121+
p = int(input(pregunta + '\n'))
122+
if p >= 1 and p <= 4:
123+
puntaje(p)
124+
break
125+
else:
126+
print("Por favor, elige una opción válida entre 1 y 4.")
127+
except ValueError:
128+
print("Por favor, introduce un número válido.")
129+
130+
dic = {'Frontend': Frontend, 'Backend': Backend, 'Mobile': Mobile, 'Data': Data}
131+
132+
casa = max(dic, key=dic.get)
133+
134+
print(f'{name}, La casa que le ha sido otorgada es: {casa}')

0 commit comments

Comments
 (0)