Programación imperativa: conceptos y ejemplos prácticos