jueves, 16 de julio de 2026

Estilos de enseñar / aprender a programar en python...

VPL Training es un curso virtual sobre el LMS Moodle que usa el plugin VPL y que ofrece un banco de problemas para aprender programación de computadores a nivel universitario. Allí hay un problema titulado Calendario raro pero inteligente, que desafía el pensamiento aritmético y computacional, busca que el estudiante proponga una solución matemática simple y la lleve al computador.

A continuación transcribo el texto del enunciado y luego analizo brevemente dos tipos de soluciones y hago una pequeña anotación al respecto:

Enunciado:

Se diseñó un calendario digital raro pero inteligente, el cual representa la fecha según la siguiente descripción:

  • El día del calendario raro es la unión del código ASCII que representa a los dígitos del día real. Por ejemplo, si el día real es 25, el calendario raro lo representa como 5053, porque 50 es el código ASCII del '2' y 53 es el código ASCII del '5'. Si el día tiene sólo un dígito, el cero se representa según su ASCII 48. Por ejemplo, si el día es 07, el calendario raro lo representa como 4855 (revise https://ascii.cl/es/).
  • El mes del calendario raro se representa de manera similar al dia. Por ejemplo, el mes Noviembre es 4949 y Febrero es 4850.
  • El año del calendario raro se representa como la cuenta regresiva de los años que faltan para llegar a 9999. Por ejemplo, si el año real es 2018, el calendario raro lo representa como 7981.
  • Todos los números (día, mes y año) se unen. Por ejemplo, si la fecha es 25 de febrero de 2018, la representación del calendario raro es 505348507981, un total de doce (12) dígitos (caben en un long de Java). A continuación varios ejemplos explicados:

Se requiere un programa que reciba como entrada un número de máximo ocho (8) dígitos, que representan una fecha, en el formato estándar de los seres humanos DDMMYYYY (asuma que la fecha siempre es válida). El programa debe generar como salida la representación de la fecha según el Calendario Raro pero Inteligente. Por ejemplo, la entrada 25022018 corresponde a la fecha 25 de febrero de 2018 y debe generar como salida 505348507981.

Tenga en cuenta que los caracteres de los dígitos del cero (0) al nueve (9) se representan en el código ASCII con la secuencia de códigos 49 al 57:

0 = 48   |  1 = 49    |  2 = 50    |  3 = 51    |  4 = 52

5 = 53   |  6 = 54    |  7 = 55    |  8 = 56    |  9 = 57

Entradas: Un número entero de máximo ocho (8) dígitos.

Salidas: Un número de doce (12) dígitos.

Dos Soluciones

La primera solución es aritmética, es la solución esperada. Porque las entradas y salidas son números y las operaciones sugeridas son divisiones, sumas, restas y productos. Se espera un proceso inicial de análisis del número, es decir, partir en pedacitos el número, para lo cual se divide y toma residuo. Luego un proceso de codificación o conversión, que hace sumas y restas. Y finalmente un proceso de síntesis, unir los pedacitos y armar un número, para lo cual se multiplica y se suma.

Solución 1 - Numérica | Matemática | Independiente del lenguaje

La segunda solución es la que entrega la inteligencia artificial, la que se lee en muchos blog y videos, la que muchos usan pero pocos entienden, que usa funciones especializadas del lenguaje, pero que ninguno conoce cómo funcionan y ni siquiera qué hacen. Esta solución usa cadenas de caracteres y arreglos, en un nivel inicial del curso en el que los estudiantes ni siquiera logran comprender el residuo y la aritmética modular.

Solución 2 - Cadenas | "Pythonisa" | Dependiente del Lenguaje

Los estudiantes se sorprenden cuando cuestiono la segunda solución. Algunos profesores explican esta solución, porque en sus tiempos aprendieron lo fundamental y creen que los estudiantes lo aprenderán después. Los más amigos de la historia de la pedagogía lo llaman "constructivismo". Pero la realidad es que los estudiantes de hoy no conocen ni comprenden la primera solución, que es lo básico, lo mínimo...

Con el auge de la inteligencia artificial y el anacronismo, inercia y pasividad curricular de los directivos, las nuevas generaciones no están aprendiendo a leer, ni a escribir, ni a resumir, ni a comprender, ni a sumar, ni a pensar... Eso sí, aprenden el ejemplo y delegan todo a la IA, aprenden de la mala política y la trampa...

Por ahora, creo, pienso que VPL Trainig, sigue siendo un buena alternativa para identificar las brechas y ayudarlas a resolver, para desarrollar pensamiento crítico y pensamiento computacional, para entrenar la inteligencia natural, que tendrá que batallar contra el mercado político y económico de la inteligencia artificial...

La evaluación docente es alentadora. Al parecer los estudiantes han valorado el esfuerzo, la lucha contra la parsimonia burocrática que predica calidad pero ofrece mediocridad... Dejo aquí la evaluación del semestre pasado y gracias a mis estudiantes, ellos son el alma del Alma Mater...