Se pretende que el alumno adquiera: capacidad para comprender y describir el problema que resuelve un algoritmo (el “qué”) y diferenciarlo de la manera en que lo resuelve (el “cómo”); capacidad para analizar algoritmos, compararlos según su eficiencia en tiempo y en espacio; capacidad y hábito de identificar abstracciones relevantes al abordar un problema computacional; familiaridad con técnicas de diseño de algoritmos de uso frecuente; familiaridad con la programación (en el lenguaje c, entre otros) de algoritmos y estructuras de datos, familiaridad con la utilización de diversos niveles de abstracción y lenguajes de programación.