Está en la página 1de 19

Acerca del Autor

Edwin Yamid Aldana Barragn es un estudiante de octavo semestre de Ingeniera de Petrleos de la Universidad Nacional de Colombia Sede Medelln. Es un apasionado por la programacin, desde que curs la asignatura Fundamentos de programacin, ofrecido por la escuela de Sistemas de la UNAL. Desde entonces ha ampliado sus conocimientos en el rea de la programacin. Edwin programa en tres lenguajes, Visual Basic, C++ y FORTRAN. Actualmente se ecuentra aprendiendo el lenguaje JAVA. Adems se encuentra interesado en aprender el lenguaje MATLAB. Durante sus cuatro semestres ofreciendo asesoras particulares a los alumnos de la asignatura Fundamentos de Programacin, Edwin ha detectado fallas en la forma en la que se dicta dicha asignatura, por la que ha decidido escribir el presente texto para compartirlo con sus alumnos.

Gracias a la programacin por ayudarnos a desarrollar y poner a prueba nuestra capacidad intelectual Para programar slo se necesita pensar, por lo que todos estamos en la capacidad de programar EL AUTOR

PRLOGO
Este texto est dirigido a los estudiantes de la asignatura Fundamentos de Programacin de la Universidad Nacional de Colombia sede Medelln, en especial para aquellos estudiantes de los primeros semestres, para quienes es especialmente difcil asimilar el contenido de la asignatura, debido a las grandes aplicaciones matemticas que tiene la programacin. El autor aconceja que esta asignatura sea vista despus de que el estudiante haya cursado las asignaturas obligatorias de la escuela de matemticas. Para quienes se encuentren cursando apenas la primera o segunda asignatura de la escuela de Matemticas, se aconseja hacer una revisin de los anexos que se encuentran en la parte final de este texto, cuando se sugiera en cada captulo, en los cuales se sintetizan las bases matemticas que debe tener el estudiante para entender a cabalidad el contenido de cada captulo del presente texto. A travs de este texto el autor pretende explicar paso a paso aquellas cosas que en clase suelen pasarse por alto, y que a veces resultan ser decisivas para un estudiante. Este es un libro gua de la asignatra Fundamentos de Programacin, lo cual quiere decir que el contenido de este libro se encuentra organizado en el rden de temas de la asignatura. Este texto se encuentra dividido en tres partes, cada una de tres captulos, cada parte coresponde al tema de cada parcial que se hace en la asignatura. Se recomienda que el lector preste especial atencin a la introduccin y los tres captulos de la primera parte, debido a que es all donde se encuentran todas las bases que se necesitarn para poder entender y hacer los ejercicios del resto de la asignatura. Al final de cada captulo, se dedican unas pginas para detallar el uso del editor de Visual Basic, en el cual se har la programacin consistente a la parte prctica de la asignatura. El estudiante no deber sentirse frustado cuando el programa le arroje uno o varios errores, eso es algo que pasa con bastante frecuencia, an a los expertos programadores les sucede. Recuerden que nadie es perefecto, lo que importa es aprender de los errores para no volverlos a cometer.

Acerca de la asignatura
Fundamentos de Programacin es una asignatura dirigida a los estudiantes de las diferentes ingenieras de la Universidad Nacional de Colombia. Esta asignatura se est ofreciendo en la Sede Medelln a partir del semestre 01-2009, como parte de la reforma acadmica que tuvo lugar en la Universidad y reemplaz a la asignatura Algoritmos y programacin que era dirigida a estudiantes de quinto semestre, que se encontraran cursando Mtodos Numricos, debido a que una de las aplicaciones ms importantes de la programacin radica en los mtodos numricos. Con la reforma la nueva asignatura pas a ser ms elemental, con el fin de que los estudiantes que la estn cursando no requieran conocimientos profundos de clculo o mtodos numricos. La evaluacin de esta asignatura se divide en dos partes: una terica del 75% consistente de 3 exmenes realizados por escuela, es decir, que para todos es el mismo, independientemente del profesor con el que se encuentre matriculado el estudiante. El otro 25% es la parte prctica, por lo general consistente de 2 exmenes, a criterio de cada profesor. La parte prctica de la asignatura se desarrolla en el editor de Visual Basic que viene incorporado en Excel.

Contenido
Introduccin a los Algoritmos

PRIMERA PARTE
Captulo 1 Estructura secuencial, variables, entrada y salida de datos Captulo 2 El condicional: sus formas y sus usos Captulo 3 Ciclos: Iteracin definida, contadores y acumuladores. Las pruebas de escritorio

SEGUNDA PARTE Captulo 4 Ciclos: Iteracin indefinida Captulo 5 Aplicaciones de los ciclos: Races de funciones Captulo 6 Trabajando con vectores y TDUS

TERCERA PARTE
Captulo 7 Programacin Modular: Funciones y Subprogramas Captulo 8 Trabajando con matrices Captulo 9 Aplicando conocimientos

ANEXOS
Series y Sucesiones Races de funciones y de ecuaciones Vectores y Matrices

Introduccin a los Algoritmos


El computador, sin duda alguna ha sido uno de los mas grandes desarrollos tecnolgicos que ha cambiado la historia del hombre, gracias a l, ahora podemos hacer cosas que antes eran imposibles para nosotros. Por ejemplo, considere que debemos llevar a cabo una serie de operaciones 100 millones de veces sin equivocarnos, es absurdo para nosotros siquiera intentarlo, ya que podramos tardar muchos aos, pero una computadora puede llevar a cabo todos estos clculos en cuestin de pocos segundos o minutos. Programar consiste en ensearle a un computador a realizar una tarea determinada. Los computadores no entienden nuestro idioma (lenguaje), necesitan alguien que les traduzca lo que nosotros le queremos decir. El idioma (lenguaje) de un computador se llama Lenguaje de mquina y nosotros no conocemos (an) ese lenguaje, por lo que la comunicacin con un computador funciona gracias a que existen software que le sirven de traductores a un computador. Existen varios lenguajes en los cuales es posible darle rdenes a un computador, pero cada lenguaje necesita un compilador (un software que le traduce al computador lo que escribimos en un lenguaje determinado), por ejemplo si escribimos rdenes para un computador en lenguaje Visual Basic, necesitaremos de un compilador de Visual Basic para que sea posible que el computador siga las instrucciones que le impartimos. En este curso se usar el lenguaje Visual Basic en el desarrollo de la parte prctica de la asignatura, el traductor que usaremos viene incluido con Excel, en este caso no vamos a usar propiamente un compilador, sino solo un traductor. La diferencia entre un compilador y un traductor es que el compilador al traducir, crea un archivo de tipo nombre.exe que se puede ejecutar directamente sin necesidad de abrir un programa compilador, mientras que un traductor simplemente va traduciendo lnea por lnea y va siguiendo las instrucciones sin crear ningn archivo ejecutable. Un programa (algoritmo) se ejecuta ms rpido en un compilador que en un traductor. Un compilador del lenguaje Visual Basic es Visual Basic 6.0, pero no lo usaremos en esta asignatura. Aqu usaremos el Editor de Visual Basic que se abre desde Excel, y que tiene muchas limitaciones con respecto a Visual Basic 6.0.

Definicin de algoritmo: Un algoritmo es una secuencia de rdenes lgicas que un computador es capaz de realizar, y que estn escritas siguiendo las reglas de un leguaje determinado. Algunos lenguajes de programacin importantes son: Visual Basic, C, C++, JAVA, MATLAB, FORTRAN, y cada uno de ellos requiere una forma especial de escribir algoritmos. A los algoritmos que se escriben directamente en un lenguaje determinado, se les llama Cdigo. Por lo general, todo cdigo es necesario escribirlo en ingls.

Pseudocdigo: Es un algoritmo simplificado que escribimos en un papel, sin seguir las reglas de ningn lenguaje de programacin especfico, se escriben en nuestro lenguaje (Espaol). Estos algoritmos no se pueden escribir directamente en el editor de Visual Basic, ni en ningn compilador, sino que es necesario realizarle ciertos cambios de acuerdo a cada lenguaje. Esta forma de escribir los algoritmos es la que se recomienda para quienes apenas estn empezando a entrar en el mundo de la programacin y es la preferida por muchos estudiantes. En los parciales tericos por lo general, se evalan algoritmos en pseudocdigo. Los algoritmos tambin se pueden hacer en diagramas de flujo y en diagramas de caja, pero al no tener tanta importancia, no se usarn en este texto.

PRIMERA PARTE
La primera parte de este libro, consta de tres captulos bsicos en la programacin, por lo que el estudiante deber prestar especial atencin a todo su contenido, ya que los conocimientos adquiridos en esta parte se usarn durante todo el curso, y le ayudarn a entender con ms facilidad la asignatura.

CAPITULO 1
ESTRUCTURA SECUENCIAL, VARIABLES, ENTRADA Y SALIDA DE DATOS.

En este capitulo entender la lgica de los algoritmos y aprender a hacer algunos algoritmos iniciales. Tambin aprender a usar el Editor de Visual Basic, y a personalizar su entorno de programacin.

1.1 Estructura secuencial


Un algoritmo est conformado por instrucciones lgicas, se acostumbra escribir una sola instruccin por lnea, aunque algunos lenguajes de programacin aceptan varias instrucciones en una sola lnea. La estructura general que todo algoritmo debe tener es la siguiente: 1. Una lnea que indica que el algoritmo empieza, se acostumbra escribir la palabra INICIO 2. Un bloque de instrucciones lgicas, que pueden ser una instruccin, cientos de instrucciones o ninguna instruccin. El bloque de instrucciones est conformado por: Entrada de datos: (Tambin llamada Lectura de datos de Entrada). La entrada de datos existe en un algoritmo siempre que sea necesario, esto quiere decir que existen algoritmos que no requieren datos de entrada. Procesamiento: Consiste en realizar las respectivas operaciones, comparaciones o ciclos que sean necesarios para llegar a la respuesta deseada. Salida de Datos: Consiste en mostrar los resultados que calcula el programa y que son importantes para la persona que lo ejecuta. Hay que tener en cuenta que en un algoritmo pueden haber cientos de clculos que son necesarios para llegar a un resultado final, en este caso puede ser que slo sea importante para nosotros conocer el resultado final y no el resultado de cada una de las cientos de operaciones que se hicieron para llegar hasta l. 3. Una lnea que indica que el algoritmo termina, se acostumbra escribir la palabra FIN

Todo algoritmo se lee y se ejecuta de arriba hacia abajo, lnea por lnea, por lo que el orden en el que se escribe un algoritmo s importa. De eso es precisamente de lo que se trata la estructura secuencial, de saber escribir cada lnea en la posicin indicada. En general los algoritmos tienen la siguiente forma: Y se ejecutan en el siguiente orden: INICIO ENTRADA PROCESOS S SALIDA FIN
1.

INICIO (En esta lnea el programa sabe que debe ejecutar instrucciones a partir de
esta lnea)

2. LEER DATOS DE ENTRADA (Aqu el algoritmo conoce el valor de ciertas variables que
se usarn durante la ejecucin del programa.

3. 4. 5. 6.

OPERACIN 1 CON LAS VARIABLES OPERACIN 2 CON LAS VARIABLES MOSTRAR RESULTADOS (Los resultados se pueden mostrar en cualquier parte del algoritmo, siempre y cuando sea despus de la lnea en la cual se calcula lo que se quiere mostrar. 7. FIN (Aqu el algoritmo para su ejecucin.

Ejemplo: Ordene de manera Secuencial lgica las siguientes instrucciones en forma de algoritmo para leer un nmero y calcular su cuadrado. 1. Mostrar cuadrado 2. 3. 4. 5. cuadrado = X Leer X INICIO FIN
2

Solucin: 1. INICIO (Sabemos que todo algoritmo debe empezar por la palabra INICIO 2. Leer X (Debemos saber a qu nmero es que se le va a calcular el cuadrado. 3. cuadrado = X (Se calcula el cuadrado del nmero ingresado) 4. Mostrar cuadrado (Se muestran los resultados importantes) 5. FIN (Todo algoritmo debe terminar con la palabra FIN)
2

1.2 Variables
En programacin existen los siguientes tipos de variables que se usan de acuerdo al valor que toman: Entero: Se declaran variables de tipo entero cuando se sabe con anticipacin que los valores que va a tomar esa variable slo son nmeros enteros, sean positivos o negativos. Real: Una variable se debe declarar de tipo real, cuando se sabe que los valores que va tomar incluyen decimales, ya sean valores negativos o positivos, cuando se tenga la duda de si una variable puede tener decimales, se debe declara como real. Cadena de caracteres: Es una variable que no toma valores numricos, sino caracteres, como Nombres de personas, letras, etc. Si se le asigna un valor numrico a una variable de tipo caractr, no se podr realizar ninguna operacin matemtica con ese valor, ya que para el programa es como si quisiramos calcular, por ejemplo la raz cuadrada de mi amigo, es decir, que no tiene sentido. Lgicas: Este tipo de variables slo tienen dos posibles valores y son valores de verdad: verdadero, o falso, equivalentemente, 1 (en caso de ser verdadero) o 0 (cero, en caso de ser falso). Se usan cuando se nos interesa verificar un estado de una variable. Por ejemplo: suponga que queremos verificar si una persona es mayor de edad, en este caso la variable de tipo Lgico toma el valor 1 (verdadero) en caso de que la edad sea mayor o igual a 18 (aos) y toma el valor de 0 (falso) en caso de que la edad sea menor de 18. Los tipos de variables ms usados son las Enteras y las Reales. Las variables se deben declarar antes de ser utilizadas, en Pseudocdigo a veces se omite la declaracin de las variables que se usan (El Pseudocdigo es muy simple).

Las variables tambin se deben inicializar, en un valor que tenga sentido, por ejemplo en 0 (cero) si es una variable que va a sumar o a contar trminos, y en 1 si es una variable que se va a usar para hacer multiplicaciones. Las variables que se leen como datos de entrada, no se deben inicializar.

1.3 Nombrar variables


El nombre que le pongamos a una variable no significa nada para el computador, pero s significa mucho para nosotros, por lo que a la hora de darle nombre a una variable debemos asegurarnos de que ese nombre nos diga para qu sirve esa variable. Se deben seguir unas pautas sencillas a la hora de nombrar variables. 1. El nombre de una variable debe empezar por una letra entre la a y la z, por ejemplo: alfa, peso, inclinacin, etc. 2. No deben haber espacios vacos en el nombre de una variable, por ejemplo, una variable no se puede llamar peso menor 0 edad del padre, una correccin sera pesoMenor, edadDelPadre 3. Se pueden incluir nmeros en el nombre pero slo despus de la primera letra, por ejemplo, una variable no se puede llamar 12peso, una correccin sera peso12. 4. Se admite el guion bajo en el nombre de una variable, ejemplo: Peso_Del_Padre. 5. Se respetan las maysculas y las minsculas con las que se declar una variable, esto quiere decir que la variable llamada Peso_Del_Padre es diferente a una variable llamada Peso_del_padre. 6. Los nombres de las variables no pueden tener tlde. 7. No se pueden usar nombres reservados por el lenguaje, es decir, todas aquellas palabras que significan algo para el lenguaje, por ejemplo, no se puede usar una variable llamada if, ni then, ni end, ya que estas palabras, al igual que algunas otras se usan para que el programa realice una accin determinada, en este caso, la palabra if es la que se usa en la estructura del condicional, que veremos en el segundo captulo. Pero el estudiante no debe preocuparse si el nombre que da est reservado, ya que es muy poco probable que esto suceda.

1.4 Entrada y Salida de datos


La entrada y salida de datos resulta indispensable a la hora de hacer un algoritmo. Los datos que se ingresan se usan para realizar operaciones que resultan necesarias para llegar a un resultado, luego de calculado lo que se quera se deben mostrar los resultados. En Pseudocdigo por lo general los datos de entrada que se necesitan se piden escribiendo la palabra LEER seguida del nombre de la variable que se necesita, si se necesita ms de una variable, se coloca una coma , y en seguida se escribe el nombre de la otra variable que se debe ingresar. En cuanto a la salida de datos, debe saber el lector que existen tres posibilidades a la hora de mostrar resultados.

1. Mostrar el resultado calculado por medio de una variable, en este caso se escribe seguido de la palabra MOSTRAR o IMPRIMIR (Es lo mismo) el nombre de la variable con la que s calcul el resultado. Pero debe tener presente que lo que en realidad est mostrando es el valor que tiene esa variable, es decir, que lo que se muestra es por ejemplo un nmero. 2. Mostrar un resultado por medio de una operacin matemtica en la que se involucra ms de una variable, en este caso, al igual que en el caso anterior, lo que en realidad se est mostrando es el resultado de la operacin que se plantea. 3. Tambin se pueden mostrar caracteres o palabras, frases, en este caso, todo lo que se quiera mostrar en palabras se escribe entre comillas ( ), por ejemplo si la persona quiere mostrar la frase El resultado es: deber escribir lo siguiente: MOSTRAR El resultado es:

En el siguiente ejemplo se detalla el uso de las variables Ejemplo: Nombrar variables y declararlas El ndice de masa corporal (IMC) de una persona es un parmetro que sirve para saber si una persona tiene sobrepeso, est baja de peso, o tiene un peso normal. Se calcula dividiendo el peso de una persona (en kg) entre la estatura (en metros) al cuadrado de la misma persona: IMC=peso / (estatura^2) Haga un algoritmo que calcule el IMC (ndice de Masa Corporal) de una persona. Anlisis: Sabemos que para calcular el IMC de una persona, necesitamos la estatura y el peso de la persona, por lo que estas son las dos variables de entrada que necesitamos. Ahora Qu nombre le queremos dar a cada una? Muy fcil, qu tal si al peso lo lamamos peso y la estatura estatura, ahora, analicemos Ser que el peso de una persona en kilogramos puede tener decimales?, Ser que la estatura de una persona en metros puede tener decimales? Asumamos que el peso no va a tener decimales, luego, el peso sera una variable de tipo entero. Como la estatura en metros si tiene decimales, ser una variable de tipo real. Adicionalmente declararemos la variable IMC, la cual tendr decimales, por lo que la declararemos como real. Solucin: INICIO Declarar peso como entero Declarar estatura, IMC como reales LEER peso, estatura IMC = peso / (espatura^2) Cuando se lee mas de una variable, se separan mediante una coma Se hacen las operaciones matemticas necesarias para llegar a una respuesta Recordemos que si queremos mostrar palabras o frases, las encerramos entre comillas La declaracin de las variables se hace antes de leerlas o inicializarlas Recuerde que todo algoritmo debe empezar por la palabra INICIO

MOSTRAR Su ndice de masa corporal es: , IMC FIN

Recuerde que todo algoritmo debe terminar con la palabra FIN

Observe que para hacer el algoritmo no usamos valores especficos para alguna de las variables, precisamente la programacin consiste en eso, es decir, que el algoritmo debe funcionar para cualquier valor que la persona que ejecute el programa ingrese. Tambin hay que aclarar que expresiones como la de la quinta lnea del algoritmo anterior (IMC=peso/(espatura^2)) no son ecuaciones, es decir que no es una igualdad, sino una operacin de asignacin, esto es, el resultado de la operacin del lado derecho (peso/(espatura^2)) se guarda en la variable del lado izquierdo (IMC). Y se lee de la siguiente manera: A la variable IMC llvele el resultado del peso dividido entre el cuadrado de la estatura, por ejemplo si peso = 60 y estatura = 1.65, el valor de la variable IMC es 60 / (1.65^2) = 60 / 2.7225 = 22.0386, Por lo que si mostramos IMC para este caso especial, en realidad estaramos mostrando 22.0386, pero si se ingresara un valor diferente para el peso o la estatura, obviamente el resultado sera diferente. La declaracin de variables con frecuencia se omite en los algoritmos que se escriben en Pseudocdigo, En Visual Basic es buen hbito declarar las variables que se usan, ya que muchas veces el programa no funciona si no se ha hecho la respectiva declaracin de las variables.

Con el ejemplo anterior se ha mostrado el procedimiento a seguir para hacer un algoritmo, que de manera general es el siguiente: Entender el problema Escribir la palabra INICIO Nombrar, declarar y/o inicializar las variables Leer los datos de entrada Ejecutar las operaciones y procedimientos necesarios para llegar a la solucin Mostrar los resultados requeridos por el problema Escribir la palabra FIN

1.5 Lenguaje Visual Basic Ahora se mostrar la manera de hacer algoritmos en lenguaje VB. Para empezar, la palabra INICIO no se escribe en el Editor, aunque el editor tiene su equivalente que es: Private Sub CommandButton1_Clic() que el programa lo escribe por defecto y no debemos eliminar esta lnea. La palabra FIN tampoco la escribimos, el programa por defecto escribe End Sub, que indica el final del programa y por tanto tampoco debemos eliminarla. La declaracin de variables se hace en la parte de arriba e inicia con la palabra Dim se deja un espacio, se escribe es nombre de la variable, se deja un espacio, se escribe la palabra as, se deja un espacio, y por ltimo se escribe el tipo de variable que se desea para esa variable. Las variables se deben declarar para que el programa reserve una cantidad adecuada de memoria y su ejecucin sea rpida, cuando una variable no se declara el programa reserva una cantidad de memoria grande, por lo que la ejecucin ser ms lenta. Los tipos de variables que usaremos en VB son los siguientes:

Byte: Se usa para nmeros pequeos y sin decimales, excelente para declarar la edad de una persona, ya que por lo general, la edad de una persona nunca es mayor de 150 (aos) Integer: Nmeros enteros, negativos o positivos, desde pequeos hasta medianamente grandes, no se recomienda para nmeros mayores a 32000. Long: Nmeros enteros mas grandes que los Integer, ideal para declarar el numero de cedula de ciudadana de una persona. Single: Nmeros reales con decimales, negativos y positivos, desde pequeos hasta medianamente grandes, es el tipo de variable ms usado por muchos en este curso. Double: Nmeros reales mas grandes que los Single

La entrada y salida de datos se puede hacer desde una caja de texto (Textbox..), a travs de un InputBox (Mensaje en el cual hay un espacio para escribir un nmero, una palabra o una frase) o leyendo datos desde Excel (Esta forma se explicar en captulos posteriores), o desde un archivo de texto (Esta forma no usar en este curso). Al igual que la entrada de datos, la salida de datos se puede imprimir tambin en una caja de texto (TextBox.., a travs de un mensaje, o escribiendo los resultados en Excel. Ejemplo: Escriba el algoritmo para calcular el IMC de una persona en lenguaje Visual Basic, haga la lectura de datos de entrada a travs de in InputBox en el que muestre un mensaje apropiado para la persona que va a ingresar los datos de entrada. Y muestre el resultado en un mensaje (MsgBox), tambin mostrando un mensaje apropiado.

Solucin Private Sub CommandButton1_Clic() Dim peso as Byte, estatura as single, IMC as single peso = InputBox(Ingrese su peso en Kilogramos ) estatura = InputBox(Ingrese su estatura en metros ) IMC = peso / (estatura^2) MsgBox(Su ndice de masa corporal es: & IMC) End Sub Esta lnea tambin la escribe VB por defecto e indica el final del algoritmo

Recuerde que esta lnea es el equivalente al INICIO y el programa la escribe por defecto De esta forma se declaran las variables en VB Esta es la forma de usar los InputBox, La persona lee el mensaje escrito entre comillas, escribe un valor y presiona Enter o aceptar y ese valor ingresado se guarda en la variable del lado izquierdo El funcionamiento de los MsgBox es anlogo al de los InputBox, con la diferencia que en este caso la persona no ingresa ningn valor.

Observe que para mostrar ms de un elemento o variable se deja un espacio, se escribe el smbolo &, se deja nuevamente un espacio y se escribe el nombre de la otra variable que se desea mostrar.

1.6 Ingresando al editor de Visual Basic (VB): Ahora detallaremos acerca del editor de VB. que viene con Excel. 1. Abrir el Editor: Existen Varias maneras de hacerlo, la ms sencilla es: Abrir Microsoft Excel Manteniendo presionada la tecla Alt presionar la tecla F11, Al hacer esto aparecer el editor VB que es el siguiente:

1.7 Empezando a usar el Editor: Dar clic en la opcin insertar que aparece en la parte de arriba del editor, se abrir un submen con las opciones: procedimiento, UserForm, Mdulo, Mdulo de clase y Archivo Elegir la opcin UserForm del submen anterior. Vemos que aparecen dos cosas, una que se llama UserForm1 y otra que se llama Cuadro de herramientas.

Seleccionar del Cuadro de herramientas la que se llama Botn de Comando, (ahora piensen como si hubieran seleccionado un rectngulo en Word), entonces dibjenlo a su gusto en el UserForm1. Este ser el botn con el cual su algoritmo se ejecutar. Cada elemento que se ubique dentro del UserForm tiene unas propiedades, las cuales se muestran en la parte inferior izquierda del editor cuando se seleccione un elemento dado (dando clic sobre l). Dichas propiedades se pueden personalizar a nuestro gusto. Por ejemplo seleccionemos el botn que acabamos de dibujar, le vamos a cambiar por ejemplo el color, que por defecto es un plateado, en las propiedades del botn, la tercera se llama BackColor, si damos clic en la casilla que est justo al frente de BackColor aparecer un pequeo tringulo, en el cual debemos dar clic para que se muestre el submen. Damos Clic en la opcin Paleta y elegimos el color deseado.

Ahora cambiemos el nombre del botn que creamos (que por defecto es: CommandButton1), lo llamaremos, como queramos, por ejemplo Mi primer Botn, veamos que la sptima propiedad del botn que se muestra se llama Caption, y que en la casilla de enfrente est escrito el nombre CommandButton1, entonces, borremos esto y escribimos el nuevo nombre que le pondremos (Mi Primer Botn). Tambin podemos cambiar el tamao y el tipo de letra con el que est escrito el nombre del botn. Para esto, vamos a la propiedad que aparece de onceava, que se llama Font, en la casilla de al frente dice Tahoma y si la sealamos aparecer un botn con tres puntos suspensivos , en el cual damos Clic, y enseguida escogemos el tipo de letra, la forma, y el tamao, y damos aceptar. Hagamos Clic sobre la interfaz (UserForm) para que aparezca nuevamente la Caja de herramientas Ahora vamos a crear un textbox (caja de texto), la cual seleccionamos del Cuadro de herramientas, identificada con las letras ab, y la dibujamos en el UserForm, de manera anloga a como hicimos con el botn. Las cajas de texto se usan para ingresar datos al programa o para que el programa muestre resultados a travs de ellas. Las cajas de texto son muy usadas y por lo general, resulta muy conveniente cambiarles el nombre que traen por defecto por nombres que signifiquen algo para nosotros, como por ejemplo TextoA, TextoX, Resultado, salida o cualquier otro que queramos, se recomienda que empiecen por la palabra Texto o al menos T, para no confundirlas con nombres

de variables . En el caso de las cajas de texto la opcin Caption no existe, para cambiar el nombre cambiamos de la primera propiedad, que se llama (Name), y por defecto sern: Textbox1, Textbox2, Textbox3, Por ltimo vamos a crear un Label (etiqueta), del Cuadro de herramientas identificada por la letra A mayscula, y la dibujamos, como ya sabemos. Las etiquetas se usan para escribir el nombre de las cajas de texto, aunque a veces se usan para programar, como si fueran botones. Podemos agrandar la interfaz, segn nuestra necesidad, haciendo Clic sobre ella y agrandndola de los extremos como si fuera una imagen. Al personalizar la interfaz, como ya sabemos y agregar otras cajas de texto, etiquetas y botones, podemos obtener un nuestro propio entorno personalizado, como el siguiente:

Es importante hacer una Interfaz muy clara, de tal manera que la persona que vaya a ejecutar el programa (El profesor) no tenga dudas acerca de: en donde debe ingresar un valor, o cul botn presionar.

Ahora que ya conocemos los cuadros de texto, se explicar la manera de leer datos de entrada a travs de ellos y mostrar resultados. Lo que vamos a hacer primero es cambiar el nombre de cada una de las cajas de texto que hemos creado, para esto, modificamos la propiedad (Name), de la siguiente manera: A la caja de texto que

tiene la etiqueta Valor de A vamos a llamarla TextoPeso, y a la etiqueta le cambiamos lo que tiene escrito Valor de A por Ingrese su Peso en kg, la caja de texto que tiene la etiqueta Valor de B le vamos a poner el nombre TextoEstatura y a su etiqueta le vamos a cambiar por Ingrese su estatura en metros, Por ltimo a la otra caja de texto le cambiamos el nombre por TextoR y a la etiqueta le dejamos solo la palabra Resultado. Ahora damos dobleclic sobre el botn para entrar a programar. Nos damos cuenta que ya estn escritas dos lneas, que son las de INICIO y FIN, por lo tanto lo que vayamos a programar lo debemos escribir entre esas lneas. Vamos a escribir el algoritmo para calcular el IMC para ilustrar el uso de las cajas de texto: Private Sub CommandButton1_Clic() Dim Peso as Byte, Estatura as single, IMC as single Peso = Val(TextoPeso.text) Estatura = Val(TextoEstatura.text) IMC = peso / (estatura^2) TextoR.text = Su IMC es: & IMC End Sub

Ahora podemos ejecutar este programa presionando la tecla F5, enseguida se mostrar la interfaz, en la cual debemos ingresar un valor para el Peso y otro para la Estatura en las cajas de texto destinadas para eso. Luego damos Clic en el botn que creamos y se mostrar lo que queramos calcular. Apuntes adicionales Las multiplicaciones en VB se escriben con el signo asterisco *, Por ejemplo 2Y se escribe 2*Y. Para guardar un Programa elaborado en el Editor VB de Excel debemos guardar solamente el Excel, pero no se guarda como Libro de excel, que es el predeterminado, sino que debemos elegir la segunda opcin, que es Libro de Excel habilitado para macros. Para abrir un programa que ya ha sido guardado como Libro de Excel habilitado para macros, Excel mostrar un mensaje que dice Las macros han sido deshabilitadas y sale una opcin para habilitarlas, se deben habilitar antes de entrar al editor y ejecutar el programa. A veces Visual Basic arroja el siguiente error Desbordamiento cuando se ejecuta un programa, esto quiere decir que est haciendo clculos muy grandes que no pueden ser almacenados en los tipos de variables declarados, en este caso se aconseja cambiar los tipos de variable de integer a long de single a Double.

Revisin de conceptos Qu es estructura secuencial? Cules son los pasos para hacer un algoritmo? Qu diferencias hay entre Pseudocdigo y Cdigo? En Pseudocdigo siempre es necesario declarar las variables? Cul es la diferencia entre una variable de tipo integer y una de tipo single? Qu diferencia habra si en el ltimo ejemplo la penltima lnea fuera TextoR.text = IMC ? Por qu es importante crear una interfaz clara y fcil de entender? Cul es la diferencia entre un MsgBox y un InputBox?

Ejercicios Pseudocdigo 1. Haga un algoritmo que calcule el valor de X, donde X^2 + 2Y = 4, (ayuda 1: Debe despejar X pasando 2Y a restar, ayuda 2: el valor de Y es un dato de entrada) 2. Hacer un algoritmo en el que la persona que lo ejecute vea el siguiente mensaje: Dato Ledo, luego de ingresar el valor de una variable llamada X. 3. Hacer un algoritmo que lea el valor de una variable llamada Numero y al final escriba La raz cuadrada de , le muestre en seguida le debe mostrar el nmero que ingres, luego debe mostrar es y por ltimo debe mostrarle la raz cuadrada del nmero que ingres.

Ejercicios VB 1. Crear una interfaz en la cual se pida por medio de una etiqueta el valor de la variable Y en una caja de texto, y se muestre el valor de la variable X en otra caja de texto, la persona que ejecuta el programa debe saber que el valor que le muestra el programa corresponde a la variable X, donde X^3 -4Y = -5; 2. Escribir un algoritmo para calcular el valor de X del ejercicio anterior e implementarlo y ejecutar el programa. Verificar que el resultado es correcto, usando una calculadora Alguna diferencia? 3. El siguiente algoritmo debe leer dos nmeros, uno entero y uno real, y debe mostrar el cociente entre esos nmeros. Examinar detalladamente el cdigo y decir por qu no funciona en Visual Basic. (Tiene varios errores) Private Sub CommandButton1_Clic() Dim Numero1 as integer, NUMERO2 as single, Resultado as single Numero 1 = Val(TextoNumero1.text) NUMERO 2 = Val(TextoNUMERO2.text) Resultado = Numero 1 / Numero 2 TextoR.text = Resultado

End Sub 4. Hacer las correcciones necesarias al ejercicio anterior e implementarlo en Visual Basic pero, leyendo los valores de Numero1 y de NUMERO2 a travs de dos InputBox, (uno para el Numero1 y otro para el NUMERO2) en el cual se especifique con claridad cul es el nmero que se va a ingresar. 5. .