You are on page 1of 10

Ofimtica para Educadoras y Educadores

Materiales Educativos Interactivos con Hoja de Clculo

Unidad 4: Generador de ejercicios matemticos


[GUA DIDCTICA]

Por : Grver Adn Tapia Domnguez

Qu aprenderemos en esta unidad? En esta ltima Unidad de Formacin haremos un repaso en el uso de las diferentes herramientas de trabajo de una hoja de clculo como: Generar nmeros aleatorios con una macro. Desarrollar frmulas para evaluar el algoritmo de una suma. Qu es un generador de ejercicios matemticos? Es una herramienta que permite crear hojas de trabajo para matemtica, de hecho existen muchos programas que nos permiten ahorrar tiempo y esfuerzo en la generacin de ejercicios desde una suma bsica hasta lgebra1, inclusive con sus respuestas para hacer un autocontrol, pero estos a veces presentan una limitante pues no son interactivos, es decir, no le dicen al estudiante en qu momento comente una equivocacin, por el contrario el material que construiremos en esta ltima unidad no solo nos permite generar ejercicios de sumas2 que pueden ser impresas en papel o resueltas en pantalla de manera digital.

MS Word con el complemento Math Worksheet Generator (Para trabajar ejercicios en papel)

Generador de sumas elaborado en una hoja de clculo (para trabajar ejercicios en papel y pantalla)

Elaboramos una hoja generadora de sumas. El primer paso para construir una hoja generadora de ejercicios de suma para nivel inicial y primario es crear una macro que nos permita generar una determinada cantidad de nmeros aleatorios, para ello en Calc hacemos clic en el men Herramientas y a continuacin en la opcin Macros, Organizar macros y finalmente en LibreOffice Basic con lo que se abrir la ventana de administracin y gestin de macros en la que procedemos de acuerdo a las guas de los siguientes grficos:
La empresa Microsoft nos ofrece el programa Worksheet Math Generator que se puede descargar de: http://download.microsoft.com/download/9/C/F/9CF1E498-775C-493E-94FE5FA403AECECA/MathWGSetup.msi Este programa se aade a Word 2007 y 2010 como complemento. 2 Ms adelante el o la participante de este curso con base en esta experiencia puede crear generadores para otros tipos de operaciones matemticas o de lenguaje.
1

Cuando se abre la ventana de Nuevo Mdulo, le asignamos un nombre, en este ejemplo lo dejaremos con el nombre por defecto; Module1 y a continuacin hacemos clic en Aceptar.

Luego de ello nos aparece una ventana en la que tendremos que pegar el siguiente cdigo: Rem Attribute VBA_ModuleType=VBAModule Option VBASupport 1 Sub aleatorios_no_repetidos() 'llamamos a la funcin randomize, 'para que genere nmeros aleatorios de manera automtica Randomize 'indicamos el nmero mximo y el mnimo maximo = 94 minimo = 0 For i = 1 To 60 'generamos el primer n aleatorio registro_obtenido = Int((maximo - minimo + 1) * Rnd + minimo) 'generamos un aleatorio hasta encontrar uno no repetido Do While InStr(numeros, " " & registro_obtenido & ",") > 0 'lo aadimos al array registro_obtenido = Int((maximo - minimo + 1) * Rnd + minimo) Loop 'lo aadimos al array numeros = numeros & " " & registro_obtenido & "," Next 'quitamos la ltima coma numeros = Mid(numeros, 1, Len(numeros) - 1) 'formamos un array como Dios manda numeros = Split(numeros, ", ")

'escribiremos los nmeros aleatorios 'en las celdas B1, B2, y B3... Range("B1") = numeros(0) Range("B2") = numeros(1) Range("B3") = numeros(2) Range("B4") = numeros(3) Range("B5") = numeros(4) Range("B6") = numeros(5) Range("B7") = numeros(6) Range("B8") = numeros(7) Range("B9") = numeros(8) Range("B10") = numeros(9) Range("B11") = numeros(10) Range("B12") = numeros(11) Range("B13") = numeros(12) Range("B14") = numeros(13) Range("B15") = numeros(14) Range("B16") = numeros(15) Range("B17") = numeros(16) Range("B18") = numeros(17) Range("B19") = numeros(18) Range("B20") = numeros(19) Range("B21") = numeros(20) Range("B22") = numeros(21) Range("B23") = numeros(22) Range("B24") = numeros(23) Range("B25") = numeros(24) Range("B26") = numeros(25) Range("B27") = numeros(26) Range("B28") = numeros(27) Range("B29") = numeros(28) Range("B30") = numeros(29) Range("B31") = numeros(30) Range("B32") = numeros(31) Range("B33") = numeros(32) Range("B34") = numeros(33) Range("B35") = numeros(34) Range("B36") = numeros(35) Range("B37") = numeros(36) Range("B38") = numeros(37) Range("B39") = numeros(38) Range("B40") = numeros(39) Range("B41") = numeros(40) Range("B42") = numeros(41) Range("B43") = numeros(42) Range("B44") = numeros(43) Range("B45") = numeros(44) Range("B46") = numeros(45)

Range("B47") = numeros(46) Range("B48") = numeros(47) Range("B49") = numeros(48) Range("B50") = numeros(49) Range("B51") = numeros(50) Range("B52") = numeros(51) Range("B53") = numeros(52) Range("B54") = numeros(53) Range("B55") = numeros(54) Range("B56") = numeros(55) Range("B57") = numeros(56) Range("B58") = numeros(57) Range("B59") = numeros(58) Range("B60") = numeros(59) Range("E4:G4,D7:G7,K4:M4,J7:M7,Q4:S4,P7:S7,W4:Y4,V7:Y7,AC4:AE4,AB7:AE7").S elect Selection.ClearContents Range("E12:G12,D15:G15,K12:M12,J15:M15,Q12:S12,P15:S15,W12:Y12,V15:Y15,A C12:AE12,AB15:AE15").Select Selection.ClearContents Range("A4").Select End Sub Por ahora no nos detendremos en el anlisis del cdigo de lenguaje de programacin Visual Basic Application (VBA) que sin duda pone los pelos de punta a muchos usuarios iniciantes, lo que importa en este paso es aprender cmo utilizar las macros de otras hojas u otros usuarios en nuestro beneficio. Para ello procedemos de la siguiente manera:

Una vez copiado y pegado el cdigo de la macro, deber quedar algo como esto:

Finalmente cerramos la ventana para retornar a la hoja de clculo en la que ejecutaremos la macro para que genere los nmeros e iniciamos con el diseo del generador de sumas segn el siguiente formato:

Se observa que la macro genera nmeros de dos cifras y para usarlos como sumandos requerimos que estos sean de una cifra por lo que en la columna C, utilizando la frmula: =REDONDEAR(SI(B1>9;B1/10;B1);0) convertiremos esos nmeros. A partir de ello procedemos a construir los sumandos de las sumas utilizando una frmula que

haga referencia a los nmeros de la columna C. as por ejemplo para la primera suma tendremos lo siguiente:

Luego de asignar sumandos a la cantidad de ejercicios que nos hayamos propuesto, es hora de seguir con lo siguiente, en este caso convertir esos datos en valores, es decir verdaderas cifras numricas usando la siguiente frmula: =VALOR(E5&F5&G5)

Para obtener las cifras de la suma utilizaremos las siguientes frmulas: =SI(Y(D7="";D9="Muy Bien");"";SI(D7="";"?";SI(VALOR(IZQUIERDA(SU MA(E4:E6);1))=D7;"";""))) =SI(E7="";"?";SI(VALOR(DERECHA(SUMA(E4:E6); 1))=E7;"";"")) =SI(F7="";"?";SI(VALOR(DERECHA(SUMA(F4:F6); 1))=F7;"";"")) =SI(G7="";"?";SI(VALOR(DERECHA(SUMA(G4:G6) ;1))=G7;"";"")) =VALOR(D7&E7&F7&G7) Adems para que aparezcan los conos (mano con lpiz, bien y mal) se debe formatear estas celda con el tipo de letra Wingdings. Y finalmente para la caja de mensaje utilizaremos la siguiente =SI(ESERROR(H8);"Realiza la suma";SI(H8=H7;"Muy Bien";"Contina")) frmula:

Repetimos los pasos anteriores tantos ejercicios queramos visibilizar en la pantalla, 8 en el ejemplo de esta unidad. No olvidar crear un botn con el texto Clic aqu para generar nmeros y asignarle la macro creada al inicio de esta secuencia de pasos. Ni tampoco olvidar ocultar las columnas de las operaciones auxiliares y si es posible proteger la hoja para prevenir un borrado involuntario de los datos

1. REFERENCIAS DE APOYO Bibliografa: Jos Mara Delgado; Francisco Paz Gonzlez. 2012. OpenOffice y LibreOffice (manual imprescindible). Anaya multimedia. Webgrafa: https://help.libreoffice.org/Main_Page/es http://formacionprofesorado.educacion.es/index.php/es/experiencias/152-hoja-decalculo-en-la-ensenanza-de-las-ciencias-openoffice http://aulavirtual.cnti.gob.ve/aulas/file.php/1/Manuales/Manuales_de_Ofimatica/Man ual_LibreOffice_Calc.pdf http://procesocontable-ferramirez.blogspot.com/p/hoja-de-calculo.html http://www.lawebdelprogramador.com/cursos/LibreOffice/index1.html http://www.tecdigital.itcr.ac.cr/revistamatematica/Libros/WMora_MetodosNumericos/WMora_Progr amacion_OOoBasic.pdf http://wiki.open-office.es/Basic http://linuxmanr4.com/2011/11/29/funcion-para-convertir-de-numero-a-cantidadcon-letra-en-libreoffice-calc/ http://blog.open-office.es/index.php/calc/2011/01/03/como-crear-tus-propiasfunciones-para-calc-usando-macros https://wiki.openoffice.org/wiki/ES/Manuales/GuiaAOO/TemasAvanzados/Macros/St arBasic/MiPrimeraMacro Materiales con excel http://www.educarchile.cl/ech/pro/app/detalle?id=76567 http://www.enlaces.cl/index.php?t=53&i=2&tm=3&cc=313.304 http://www.educarchile.cl/ech/pro/app/detalle?ID=76855

13