Sobre OIA nivel 1
OIA Nivel 1 es una competencia de programación para principiantes donde el foco
es solamente la correción de los programas (o sea, que los programas sean
correctos) y no la eficiencia, como es en los niveles superiores.
Puntos tomados de una charla con Agustín Gutierrez
- el foco es la corrección, no la eficiencia – casi cualquier cosa entra (sin
importar que tan lento sea)
- todo sale con
vector
y for
, puede llegar a servir map
(para hacer código
mas fácil, no por eficiencia)
- enseñanza basada en problemas
Temario
Matemática
- Enteros, operaciones aritmeticas, comparacion
- Sistemas de numeracion, conversion entre ellos
- Propiedades de los enteros (signo, paridad, divisibilidad)
- Aritmetica modular (suma, resta, multiplicacion)
- Fracciones, porcentajes
- Numeros primos
Programación
- Variables, tipos, expresiones y asignacion
- Variables globales y locales
- Entrada y salida (con archivos y E/S estandar)
- Control de flujo: seleccion y repeticion
- Funciones y pasaje de parametros en ambos sentidos
- Descomposicion de problemas (pensamiento top-down)
Estructuras de datos
Simples
- booleanos
- enteros
- caracteres
Compuestas
Algoritmos
Algoritmos con enteros
- llenar
- desplazar
- rotar
- invertir
- reducciones (minimo, maximo, suma, etc.)
- sumas parciales
- busqueda lineal
Manipulacion de cadenas
- busqueda de una cadena dentro de otra
- convertir entre mayusculas y minusculas
Problemas de ejemplo
- Construir un arreglo con ciertos elementos especiales de un conjunto (Ej: El
máximo, los numeros primos, los divisibles por 7 y por 11, etc)
- Convertir numeros entre sistemas de numeracion
- Realizar operaciones con números y escribir sus resultados
- Procesar un texto identificando cadenas que contienen ciertas subcadenas
definidas
- Procesar un texto identificando o corrigiendo palabras de acuerdo a un
criterio definido (identificar palindromos, mayusculas/minusculas, letras
prohibidas, etc)