#include Main Set stack 15 año=0 Get arg numeric '2', Move to 'año' Set '4,1,1,1' Init 'fila, columna, contador columna, contador mes) meses={} Let list ( meses := "Enero","Febrero","Marzo","Abril","Mayo",\ "Junio","Julio","Agosto","Septiembre","Octubre",\ "Noviembre","Diciembre" ) calendario=0 Let ( calendario := Calendar(1,año,12) ) Cls Link gosub 'Cambia lenguaje de los meses, Imprime año' Tok sep ("") Gosub while ( i=1, Less(i,97), Dibuja calendario ) End Subrutines Define 'Dibuja calendario' Locate (fila, columna) Just center (23, [ contador mes++ ] Cget 'meses') Print it ++fila Loc row (fila--) [ {i}Plus(1):{i}Plus(7), 1:7 ] Cget 'calendario' Print this table ++contador columna columna += 25 When( Equals (contador columna, 4) ) { Set '1', Copy to 'contador columna', Move to 'columna' fila+=9 } i+=8 Return Define 'Imprime año' Locate (2,35), Print (año) Return Define 'Cambia lenguaje de los meses' Let ( calendario := Tran (" Do","Dom",calendario) ) Let ( calendario := Tran (" Lu","Lun",calendario) ) Let ( calendario := Tran (" Ma","Mar",calendario) ) Let ( calendario := Tran (" Mi","Mie",calendario) ) Let ( calendario := Tran (" Ju","Jue",calendario) ) Let ( calendario := Tran (" Vi","Vie",calendario) ) Let ( calendario := Tran (" Sa","Sab",calendario) ) Return