Por qué no es necesario sobresalir en matemáticas para aprender a programar

Este es probablemente uno de los mayores conceptos erróneos que he escuchado.

Si quieres programar, debes ser bueno en matemáticas. Es totalmente falso. Dejame explicar.

No necesitas sobresalir en matemáticas para aprender a codificar

Empecé a programar cuando tenía 12 años. Las matemáticas que conocía eran sumas, restas, multiplicaciones y divisiones. Y fue más que suficiente para introducirme en el mundo de la programación. Incluso hoy, no uso nada más complejo que potencias o raíces cuadradas.

Si alguna vez ha programado alguna línea de código, es de esperar que se haya dado cuenta de que casi no tiene nada que ver con las matemáticas. Si sabes contar, estás listo para empezar.

El origen del mito

Creo que he descubierto de dónde viene este "mito". Conoces esas películas antiguas (o no tan antiguas) sobre hackers y programadores. ¿A menudo muestran computadoras con muchos 0 y 1 en una fuente verdosa, fluyendo verticalmente a lo largo de la pantalla? Eso es código binario (y normalmente no se mueve por la pantalla, es solo texto estático).

Las computadoras entienden el código binario, pero de eso no se tratan los lenguajes de programación. Puede parecer bastante obvio, porque si estás leyendo esto probablemente tengas algún tipo de relación con este mundo. Pero te sorprendería ver cuántas personas piensan que todo se trata de binarios.

Pero además de este error, creo que el otro factor es la relación que se establece entre las palabras matemáticas y lógica . La programación requiere pensamiento lógico y las matemáticas también. Pero tanto el golf como el baloncesto requieren una pelota para jugar, y eso no significa que necesite saber cómo jugar al baloncesto para empezar a jugar al golf.

Haciéndote creer lo que acabo de decir

Tomemos un ejemplo adecuado. Imagina que quieres crear una función para imprimir la tabla de multiplicar de un número. Entonces, para la entrada 2, nuestra función devolverá:

2 x 0 = 02 x 1 = 22 x 2 = 42 x 3 = 6… Y hasta 2 x 10 = 20

Verá lo poco que se requieren matemáticas para hacer esto (aunque estemos calculando algo 'matemático'). Para el propósito de este ejemplo, usaremos JavaScript.

Primero, declaramos la función . Lo llamaremos tableOf (n) , donde n es el número del que queremos imprimir la tabla.

function tableOf(n) {
//rest of the code
}

Bastante fácil por el momento. Ahora implementaremos algo llamado bucle for. Esto es similar a una función excepto por el hecho de que, cuando llega al final, vuelve al principio hasta que alguna condición es verdadera

Queremos imprimir n veces algún otro valor (llamémosla i ) hasta que alcanza el valor 10. Hay que tener también en cuenta que yo debería empezar de 0, ya que queremos nx 0 = 0 para ser la primera línea impresa. El código podría ser el siguiente:

for(i = 0; i < 11; i++) {
console.log(n, 'x', i, '=', n*i);
}

Repasemos lo que acabamos de hacer. Comenzamos el ciclo for con i = 0 , lo que significa que i comienza desde 0 (como queríamos). Entonces decimos i <11, lo que significa que no queremos para salir del bucle unt i l i es igual a 11 o, en otras palabras, queremos que el bucle para continuar i f i es menor que 11. Entonces nos hacemos i ++, lo que significa que aumentamos el valor o f i en 1 cada vez que el bucle se inicia de nuevo (por lo que finalmente llega a 11 y sale del bucle).

Luego, solo generamos n (el número que ingresamos), 'x' (para el símbolo de las veces ), i (el número por el cual n se multiplica por), '=' (para el símbolo de igual ) y finalmente n * i ( la operación real, n veces i ).

El código anterior, combinado:

function tableOf(n) {
for(i = 0; i < 11; i++) {
console.log(n, 'x', i, '=', n*i);
}
}
tableOf(2);

Y funciona. ¿Son estas matemáticas difíciles? La única matemática que hicimos fue aumentando i por uno (adición), y comprobando si yo era menor de 11. Para este ejemplo concreto, sino que también multiplica n veces i . ¡Guau !

La otra cara de la moneda

Aprender a codificar te hará mejor en matemáticas.

Como dije antes, la programación requiere pensamiento lógico al igual que las matemáticas. Mientras escribe sus programas, encontrará muchos problemas que deben resolverse. La mayoría de las veces con lógica (pero seamos honestos, a veces la prueba y el error funcionan bien).

Desarrollar las habilidades para resolver estos problemas definitivamente lo ayudará con las matemáticas, no solo con los conceptos, sino también con la resolución de problemas. También puede extender esto a otras disciplinas, como la física.

Espero que este artículo sirva para animar a las personas que quieran probar la codificación a hacerlo. Créame, sabía poco de matemáticas y menos de inglés, y todavía podía aprender mucho. El conocimiento no tiene límites.