Depende de lo que significa “duro”.
Usando Scratch, que es un descendiente constructivista de Logo, los niños en la escuela primaria pueden aprender sobre geometría, con “pluma abajo, repetir (hacia adelante 10 píxeles, izquierda 10 grados)” dibujando algo que parece un círculo.
Algunos estudiantes de secundaria consideran que el cálculo es un concepto difícil de manejar, pero la programación permite que tanto el cálculo diferencial como el integral se realicen numéricamente a una velocidad tan alta que un alumno puede evitar intentar hacer las cosas a mano.
- Cómo encontrar el número total de palíndromos diferentes de longitud k en una cadena dada usando una matriz de sufijos
- ¿Cuál es la función concatenada en Excel y cuál es su opuesto?
- ¿Cuáles son algunos artículos clásicos sobre teoría de grafos?
- ¿Cuál es la función más compleja que has visto que, lógicamente, no debería funcionar, pero sí lo hace?
- Cómo mejorar las matemáticas básicas para programar
Algunos de los problemas en el Proyecto Euler son difíciles de resolver, quizás incluso imposibles a mano. Sin embargo, con la programación como herramienta, la combinatoria y otros campos se pueden dominar conceptualmente.
En el aprendizaje automático, una de las técnicas fundamentales es la escalada. No necesariamente usarías esto cuando realmente subas una colina física, pero para encontrar los máximos locales, simplemente sube lo más empinado que puedas desde donde estás, en un paso no muy grande, y repite hasta que no puedas subir más. . Esto es más fácil decirlo que hacerlo cuando la “colina” podría tener cientos o miles de dimensiones, pero resulta que el código para esa cantidad es prácticamente el mismo que para dos.
No diría que hay conceptos difíciles que se entienden fácilmente, pero definitivamente en cualquier cosa en la que se realicen cálculos, el acto de escribir código para hacer esos cálculos, decirle efectivamente a la computadora qué hacer, se aclarará en el propio importa lo que está pasando conceptualmente.