Skip to content

Commit 0a57f3f

Browse files
committed
Actualización Simulación
Se actualiza la simulación a la que se hizo en el vivo de YouTube.
1 parent 879aded commit 0a57f3f

File tree

4 files changed

+109
-23
lines changed

4 files changed

+109
-23
lines changed

Simulación Challenge/README.md

+84
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# HENRY CHALLENGE - Python y Matemática
2+
3+
### Bienvenido al Henry Challenge sobre Python y Matemática para la carrera Data Science.
4+
5+
<p style="color:#f92850; font-size: 16px; text-align:center;">¡ Por favor lee TODO este material con atención !</p>
6+
7+
## INTRODUCCION
8+
9+
El Henry Challenge es un desafío técnico donde evaluamos conceptos básicos sobre Python.
10+
En esta instancia, buscamos asegurarnos que todos nuestros aplicantes tengan una base de conocimientos mínimos necesarios para luego seguir aprendiendo temas nuevos.
11+
12+
>El Challenge debe resolverse de manera individual. Si te copias o recibes ayuda de compañeros, además de estar incumpliendo con las normas de Henry (lo que te dejaría afuera de la carrera), estarás perjudicándote a ti mismo, porque el primer día de clase estarías extremadamente perdido.
13+
14+
¿Se puede volver a rendir el HC?
15+
- Si, el HC se puede rendir tantas veces como ustedes quieran! No hay límite de intentos.
16+
17+
¿Qué hago una vez entregado el HC?
18+
- ¡A esperar! Los van a estar contactando en un plazo no mayor a una semana para confirmarles, tanto si quedaron, como si no lo hicieron.
19+
20+
## PASOS PARA RESOLVER EL CHECKPOINT:
21+
22+
### 1. FORK
23+
24+
Primero debes forkear este repo, haciendo click en el botón `fork` de arriba a la derecha.
25+
26+
Una vez que tengas una copia de este repo en tu cuenta de `github`, cloná el repo dentro de una nueva carpeta (asegurate de no utilizar la misma que el prep curse). Una vez clonado entrá a esa carpeta y ejecutá los siguientes comandos:
27+
28+
python tests.py
29+
30+
>Si ves los tests fallando, estás listo para comenzar, si no lee bien el output para identificar el error.
31+
32+
33+
### 2. RESOLVER EL CHALLENGE DE PYTHON
34+
35+
Tu tarea es completar el código en `checkpoint.py` de tal forma que pasen la mayoría de los tests, incluido el extra credit.
36+
37+
### 3. RESOLVER EL CHALLENGE DE MATEMÁTICA
38+
39+
Tu tarea será leer el enunciado en el archivo "HC_Math.md" y ejecutar el programa 'test_math.py' para cargar allí tus respuestas, las mismas serán guardadas en el archivo test_math.csv. Por favor no modifiques ninguno de los dos.
40+
41+
### 4. ENTREGAR TU CHECKPOINT
42+
43+
Correr por ultima vez los tests y verificar cuantos pasan. Ten en cuenta que si te aparece "1 failed;1 total" es porque tienes un error de sintaxis: seguramente falta o sobra un corchete, paréntesis, dos puntos, etc.
44+
Saca un print de pantalla de tus tests.
45+
Luego, debes subir un commit a tu repo. Para hacerlo, debes ejecutar el siguiente comando:
46+
47+
git add .
48+
git commit -m 'checkpoint commit'
49+
git push origin main
50+
51+
Una vez finalizado, chequea:
52+
1. Que veas los cambios reflejados en el repo de tu cuenta de github (entrando a tu repo desde el browser.)
53+
2. Que no haya un require - solo debe haber codigo dentro de las funciones de cada ejercicio
54+
55+
56+
<img src="https://a.slack-edge.com/production-standard-emoji-assets/13.0/google-medium/[email protected]" style="float:left; width:35px; padding: 10px;" /> Atención: no debes realizar un commit después de la hora de entrega porque se anulara la totalidad del examen.
57+
>Revisar la hora del entrega del examen en los emails que te llegaron.
58+
59+
### ¿TENES ALGUN PROBLEMA / CONSULTA?
60+
61+
1. Busca la solución en la "guía de errores comunes".
62+
63+
2. Si no la encuentras, revisa el canal de #henry_challenge en Slack. Probablemente a algún compañero le paso algo similar y ya lo consulto.
64+
65+
3. Si no encuentras la respuesta, puedes publicar un mensaje en dicho canal.
66+
67+
> No se puede hacer consultas sobre la resolucion de los ejercicios.
68+
69+
### GUIA DE ERRORES COMUNES
70+
71+
Para identificar el error, vas a tener que leerlo en la consola.
72+
73+
* 1 failed, 1 total:
74+
1. Tenes un error de sintaxis. Revisa el último ejercicio que hayas hecho, seguramente falta o sobra un corchete, paréntesis, dos puntos, etc.
75+
76+
* Author identity unknown.
77+
1. Intenta ejecutar los siguientes comandos para configurar tu cuenta:
78+
* git config --global user.name "Tu usuario de GitHub aca"
79+
* git config --global user.email "Tu email aca"
80+
81+
2. Ingresa a [Github](https://docs.github.com/es/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) y sigue las instrucciones para configurar tu token.
82+
83+
* La consola se tilda en `Runs`:
84+
1. Revisa tu código, tenes un bucle infinito. Tenes que checkear la condición de corte de tus bucles.
Binary file not shown.

Simulación Challenge/checkpoint_Resuelto.py

+21-19
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@ def Factorial(numero):
1212
Factorial(-2) debe retornar nulo
1313
'''
1414
#Tu código aca:
15-
if (type(numero) != int):
15+
if type(numero) != int:
1616
return None
17-
if (numero < 1):
17+
if numero < 1:
1818
return None
1919
factorial = 1
20-
while(numero > 1):
21-
factorial = factorial * numero
22-
numero -= 1
20+
while (numero > 1):
21+
factorial = factorial * numero #(factorial*=numero)
22+
numero = numero - 1 #(numero-=1)
2323
return factorial
2424

2525
def EsPrimo(valor):
@@ -34,12 +34,15 @@ def EsPrimo(valor):
3434
EsPrimo(8) debe retornar False
3535
'''
3636
#Tu código aca:
37-
if (type(valor) != int):
37+
if type(valor) != int:
3838
return None
39-
for i in range(2, (int(valor / 2) + 1)):
40-
if valor % i == 0:
41-
return False
42-
return True
39+
40+
primo = True
41+
for i in range(2,valor):
42+
if (valor%i == 0):
43+
primo = False
44+
break
45+
return primo
4346

4447
def ClaseAnimal(especie, color):
4548
'''
@@ -62,13 +65,12 @@ def ClaseAnimal(especie, color):
6265
#Tu código aca:
6366
class Animal:
6467
def __init__(self, especie, color):
65-
self.Especie = especie
66-
self.Color = color
67-
self.Edad = 0
68-
68+
self.edad = 0
69+
self.especie = especie
70+
self.color = color
71+
6972
def CumplirAnios(self):
70-
self.Edad += 1
71-
return self.Edad
72-
73-
a = Animal(especie, color)
74-
return a
73+
self.edad = self.edad + 1 #(self.edad += 1)
74+
return self.edad
75+
76+
return Animal(especie,color)

Simulación Challenge/tests.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ def test_ClaseAnimal_03(self):
6363
hc_errores = len(resultado_test.result.errors)
6464
hc_ok = hc_tests - hc_fallas - hc_errores
6565

66-
#archivo_test = open('resultado_test.csv', 'w')
67-
#archivo_test.write('Total_Tests,Total_Fallas,Total_Errores,Total_Correctos\n')
68-
#archivo_test.write(str(hc_tests)+','+str(hc_fallas)+','+str(hc_errores)+','+str(hc_ok)+'\n')
69-
#archivo_test.close()
66+
archivo_test = open('resultado_test.csv', 'w')
67+
archivo_test.write('Total_Tests,Total_Fallas,Total_Errores,Total_Correctos\n')
68+
archivo_test.write(str(hc_tests)+','+str(hc_fallas)+','+str(hc_errores)+','+str(hc_ok)+'\n')
69+
archivo_test.close()
7070

7171
print('Resumen')
7272
print('Total Tests:', str(hc_tests))

0 commit comments

Comments
 (0)