Date post: | 04-Dec-2015 |
Category: |
Documents |
Upload: | davidcorona |
View: | 221 times |
Download: | 0 times |
Objetivo del curso
El alumno será capaz de utilizar métodos de aproximación numérica mediante algoritmos que le permitan resolver problemas o realizar una tarea específica a través de lenguajes de cómputo.
Lenguaje estructurado
Temas• Tipos de datos• Entrada y salida de datos• Operadores y expresiones• Sentencias de control• Arreglos• Programación modular y funciones
El programa como un sistema
PROGRAMA• Tipos de datos• Declaración de variables y constantes• Operadores y expresiones• Sentencias de control
• Sentencias de decisión (if case)• Sentencias de repetición (for while)
• Arreglos• Programación modular y funciones
ENTRADADE
DATOS
SALIDADE
RESULTADOS
Tipos de datos
Tipos deDatos
Numéricos
LógicosO booleanos
Cadenas de caracteres
Único Arreglo
Variables
Constantes
complejos Reales
Single Double Byte
Integer
Long
Enteros
¿Son fijos?
¿Uno o varios?
¿Qué representan?
Tipos de datos
Tipo Descripción RangoBolean Binario (True o False)Byte Entero corto (0 a 255)Integer Entero (2 Bytes) (-32,768 a 32,767)Long Entero largo (4 Bytes) (-2,147,483,648 a 2,147,483,647)Single Real simple precisión (4 Bytes) (-3.4x1038 a 3.4x1038)Double Real doble precisión (8 Bytes) (-1.79x10308 a 1.79x10308)Currency Número con punto decimal fijo (8 Bytes) (-9.22x1014 a 9.22x1014)String Cadena de caracteres (4 Bytes a 64 Kbytes) (0 a 65,550 caracteres)Date Fecha (8 Bytes) (01/01/100 a 31/12/9999)Variant Depende del valor almacenado
Tipos de datos en Visual Basic.
Clasificación de datos.Ejemplos• Byte para cualquier entero pequeño• Integer para numerar las filas y columnas de una matriz mediana• Long para numerar los habitantes de una ciudad o los números de
teléfonos• Boolean para una variable con sólo dos posibles valores (sí o no)• Single para variables físicas con decimales que no exijan precisión• Double para variables físicas con decimales que exijan precisión• String para cadenas de caracteres• Currency para cantidades grandes de dinero
Tipos de datos
Diferenciación de los tipos de datosSe requiere hacer un programa que calcule los promedios de un grupo pequeño de estudiantes. Los datos serían:
Nombre del alumno. Número de materias que ha cursado. Calificaciones obtenidas (con 2 decimales) Promedio de calificaciones por alumno.
Proponga el tipo de dato más adecuado para cada variable.
Tipos de datos
Diferenciación de los tipos de datos Proponga el tipo de dato más adecuado para cada variable. RESPUESTA
– Nombre del alumno. String– Número de materias que ha cursado. Byte– Calificaciones obtenidas Single / Double– Promedio por alumno. Single / Double
Tipos de datos
Variables y constantes.• Constantes: Son aquellos datos que
permanecen sin cambios durante todo el desarrollo del algoritmo. Ejemplos: g=9.81, Pi=3.14159265
• Variables: Son aquellos datos cuyo valor puede cambiar durante el desarrollo del algoritmo o ejecución del programa.
Tipos de datos
ArreglosUn arreglo permite referirse a una serie de elementos del mismo tipo con un mismo nombre, y hace referencia un único elemento de la serie utilizando uno o más índices, como un vector o una matriz en Álgebra.
Tipos de datos
ArreglosPor ejemplo, si se tiene que almacenar una tabla con 100 datos de x, no sería práctico declarar las 100 variables x1, x2, …, x100.En lugar de eso, se declara una única variable x en forma de arreglo.x(100)Este tema será abordado con más detalle cuando se vean los ciclos de control (“for”)
Tipos de datos
Los programas (en cualquier lenguaje) incluyen la “declaración de variables y constantes”, en donde se define el tipo de datos que se van a emplear.
Visual Basic permite no declararlas, asignándoles el tipo “Variant”, que se adapta a los datos.
NO ES RECOMENDABLE NO DECLARAR LAS VARIABLES, pues si no se declaran, los programas requieren de más memoria, son más lentos y son más difíciles de depurar.
Declaración de Variables y Constantes
Ejemplos en Visual Basic
Declaración de Variables y Constantes
Obliga a declarar variables
Arreglos de 10 elementos (Real, doble precisión)
Variable «dato único» entero
Constante «dato único» real, doble precisión.
IntroducciónSe deben implementar mecanismos eficientes de lectura de datos y de salida de resultados, porque es precisamente en estas partes donde se da la interacción entre el usuario y el programa.
Entrada y salida de datos
El usuario recibe y envía datosHay comunicación
Fuentes de los datos de entrada.Las fuentes “tradicionales” de datos de entrada en un programa son:1. Archivos de datos2. Teclado (interacción directa con el usuario)3. Combinación de ambos
Entrada y salida de datos
Destino de los datos de salidaLos destinos “tradicionales” de los datos de salida son:1. Archivos de datos2. Pantalla3. Impresora4. Combinación de varios destinos
Entrada y salida de datos
En una Macro de Excel:
La entrada y salida de datos se da mediante:-Cajas de diálogo tipo MsgBox-Cajas de diálogo tipo InputBox-Celdas de la hoja de Excel
Entrada y salida de datos
El usuario recibe y envía datosHay comunicación
Cajas de diálogo MsgBoxEnvían información (mensajes)al usuarioReciben información mediante los botones
Título
Texto para el usuario
Botones
Icono
Entrada y salida de datos
Cajas de diálogo MsgBoxLa forma más sencilla de una caja de diálogo MsbBox es:
El código en VB de esa caja es:
El «Mensaje para el usuario» es una cadena de texto, pudiendo incluir variables concatenadas.
Entrada y salida de datos
Cajas de diálogo MsgBoxUna forma más compleja incluye de uno a tres botones, un ícono y un encabezado o título de la caja:
Entrada y salida de datos
Título
Texto para el usuario
Botones
Icono
Cajas de diálogo MsgBoxEjemplo de código en VB para una caja SI-NO con ícono
Entrada y salida de datos
«Encabezado»
«Pregunta»Icono: «Question» (signo ?)
Tipos de botones «YesNo» Si - No
Botón activado por default: 1DefaultButton1
Cajas de diálogo MsgBox
La parte izquierda (respuesta) es una variable para almacenar el «valor de retorno» del botón sobre el que se hace clic.
Entrada y salida de datos
Valor de retorno Botón En VB
1 Aceptar OK
2 Cancelar Cancel
3 Anular Abort
4 Reintentar Retry
5 Omitir Ignore
6 Si Yes
7 No No
Tener a la mano esta
tabla
Cajas de diálogo MsgBoxLa parte derecha contiene los elementos
Entrada y salida de datos
Encabezado(O título)
Texto para el usuario
Botones
Tipo de botones + Botón por default + Icono
Obligatorio:• Texto para el usuario
Opcionales:• Tipos de botones• Botón por default• Ícono• Encabezado
Ejercicio1 MsgBox:Haga una caja de diálogo MsgBox como la que se presenta:
Entrada y salida de datos
Cajas de diálogo InputBoxSon similares a las cajas MsgBox, pero permiten introducir datos a través del teclado.La forma general de la caja InputBox es:
Como resultado, la variable texto tomará el valor tecleado por el usuario o el valor por default (si es que existe)
texto = InputBox("texto para el usuario", "titulo", "default“)
Entrada y salida de datos
Cajas de diálogo InputBox
texto = InputBox("texto para el usuario", "titulo", default)
Entrada y salida de datos
Obligatorio (cadena de texto) Opcional
(cadena de texto)Opcional(Cualquier tipo de dato)
Variable de retorno (cadena de texto o valor numérico)
Pueden ser VARIABLES
Ejercicio Cajas de Diálogo Inputbox1. Muestre una caja de diálogo para leer el
nombre
2. Muestre una caja de diálogo con el nombre para leer la estatura
Entrada y salida de datos
Ejemplo integrador 1 Entrada y SalidaSe requiere hacer un programa que realice la suma de dos números.Funcionará únicamente mediante cajas MsgBox e InputBox.
Entrada y salida de datos
La hoja Excel como interfaz de entrada y salidaLas hojas Excel pueden funcionar como interfaz entre el usuario y el programa, haciendo el papel de:
– Fuente de entrada de datos– Destino para datos de salida– Archivos de datos
Entrada y salida de datos
La hoja Excel como interfaz de entrada y salidaJustificaciónLas cajas de diálogo MsgBox e InputBox son útiles cuando se requiere introducir pocos datos; sin embargo, en ingeniería es común tener archivos conteniendo centenas o miles de datos.Estos datos muchas veces provienen de equipos de medición.Introducir los datos de uno por uno sería impráctico y podría generar errores “de dedo” bastante embarazosos.
Entrada y salida de datos
La hoja Excel como interfaz de entrada y salida Ventajas:
Fácil visualización y manejo de datos, Permiten la construcción de gráficos Permiten la transformación a archivos
compatibles con otros sistemas.
Desventajas: Lentitud (si se muestran resultados intermedios) Requerimientos de mayor espacio en memoria.
Entrada y salida de datos
Comando Range para lectura de datosSe le puede asignar directamente el valor contenido en una celda de una hoja Excel a una variable determinada y utilizar este dato dentro del programa.Ejemplo:
Significado: La variable llamada “dato” tomará el valor contenido en la celda A1
dato = Range(“A1”)
Entrada y salida de datos
Comando Range para la escritura de resultados
Se puede escribir el valor de una variable en una celda determinada.Ejemplo:
Significado: Escribirá en la celda A1 el valor actual de la variable llamada dato.
Range(“A1”) = dato
Entrada y salida de datos
Comando Cells para lectura de datos Es otra forma de asignar directamente el valor de una celda a una variable.Ejemplo:
Significado: La variable llamada “dato” tomará el valor contenido en la celda ubicada en la línea 2, columna 1 (O sea, en la celda A2)
dato = Cells(2,1)
Entrada y salida de datos
Comando Excel para mostrar resultadosSe puede escribir el valor de una variable en una celda determinada usando el objeto Cells.Ejemplo:
Significado: Escribirá en la celda A1 (renglón 1, columna 1) el valor actual de la variable llamada “dato”.
Cells(1,1) = dato
Entrada y salida de datos
Ejemplo integrador 2 Entrada y SalidaSe requiere hacer un programa que calcule la velocidad a partir de la distancia y del tiempo.El programa tomará en cuenta las unidades del tiempo y la distancia para mostrar las unidades de la velocidad.Leerá los datos de una hoja de cálculo y escribirá los resultados en la misma hoja de cálculo
Entrada y salida de datos
Ejercicio3. Entrada y SalidaHaga un programa que:• Muestre un mensaje de presentación• Lea el radio de un círculo mediante una caja
de diálogo InputBox• Calcule el perímetro del círculo (2 x pi x radio)• Calcule el área del círculo (pi x radio2)• Muestre los datos y los resultados en una hoja
de Excel
Entrada y salida de datos
Un operador es una entidad que da un resultado (dato) a partir de uno o más “operandos”
Operador RESULTADO(dato)
Operando 2
Operando 1
Operadores y expresiones
Tipos de operadores en programación
1. Operadores aritméticos2. Operadores relacionales (o de relación)3. Operadores lógicos4. Funciones de biblioteca5. Operadores de cadenas de caracteres.
Operadores y expresiones
Operadores aritméticos• Sirven para representar operaciones aritméticas.
Los tipos de opernados (datos) son numéricos (enteros o reales)
• Cuando en una expresión aritmética intervienen operandos de diferentes tipos, el resultado se expresa, generalmente, en la misma precisión que la del operando que la tiene más alta. El orden, de menor a mayor, según la precisión es Integer, Long, Single, Double y Currency.
Operadores y expresiones
Operadores aritméticosEn Visual Basic, los operadores aritméticos son:
Operación ARITMÉTICA Símbolo en VB Ejemplo de expresión Resultado
Exponenciación ^ 2^3 8
Cambio de signo - -5.4 -5.4
Multiplicación, división *, / 3*8 24
División entera \ 10\3 3
Resto de una división entera MOD 10 Mod 3 1
Suma y resta +, - 2+2 4
Operadores y expresiones
Orden de prioridad de operadores aritméticos
Operadores y expresiones
^
* /
\ Mod
+ -
Exponencial
Multiplicación y división
División y resto (enteros)
Suma y resta
( ) Expresión entre paréntesis PRIORITARIA
Transformación de expresiones matemáticasEjemplo: La expresión a = 3^5+3/8-4*8 se realiza así:
Operadores y expresiones
3^5 =243
3/8 = 0.3754*8 = 32
243+0.375-32=211.375
a = 211.375
Transformación de expresiones matemáticasEjemplo 2: La expresión c = 2^4*3/8*4.1*7*6.09 se realiza
así:
Operadores y expresiones
2^4 =16
16*3 = 48 48/8 = 66*4.1=24.624.6*7=172.2 172.2*6.09=1048.698
c = 1048.698
Paréntesis para transformar en expresiones válidasEjercicio:Escriba la sintaxis correcta en VB para representar la siguiente expresión:
6.7
1287
8
392358
t
Respuesta:t = (5^8-23*9+3/8)/(7-(28+1)/7.6)
Operadores y expresiones
Operadores relacionales (o de relación)• Permiten realizar comparaciones entre valores de
tipo numérico o de caracter. • El resultado de la operación será verdadero o falso.
Operador DE RELACIÓN Significado
< Menor que
> Mayor que
= Igual que
<= Menor o igual que
>= Mayor o igual que
<> Distinto de
Operadores y expresiones
Operadores relacionales (o de relación)• Ejemplo: Evalúe como verdadero o falso el
resultado de las siguientes relaciones:A B Relación Resultado
3 7 A < B Verdadero
0 -1 A<>B Verdadero
0 -1 A<B Falso
6 9 B>=A Verdadero
5 5 A<B Falso
5 5 B>=A Verdadero
6 7 A=B Falso
Operadores y expresiones
Operadores lógicos• Los operadores lógicos o booleanos básicos
son: Not (no), And (y), Or (o)• Se utilizan combinados con los operadores de
relación, dentro de secuencias de control (IF, CASE, etc)
Operador lógico Expresión lógica Significado
Not Not p Negación de p
And p And q Conjunción de p y q
Or p Or q Disyunción de p y q
Operadores y expresiones
Creación de las tablas de verdad• Las definiciones de las operaciones Not, And,
Or se resumen en las tablas conocidas como tablas de verdad.
• Tabla de verdad para el operador Not
a Not a Ejemplo
verdadero falso Not (6>10) es verdadera, ya que (6>10) es falsa
falso verdadero
Operadores y expresiones
Creación de las tablas de verdad• Las definiciones de las operaciones Not, And, Or se
resumen en las tablas conocidas como tablas de verdad.
• Tabla de verdad para el operador And. (a y b) es verdadera sólo si tanto a como b son verdaderas.
a b a And b Ejemplo
verdadero verdadero verdadero (6<10) And (7<10) Verdadero
verdadero falso falso (6<10) And (10 >11) Falso
falso verdadero falso (10<6) And (7<10) Falso
falso falso falso (10<6) And (10>11) Falso
Operadores y expresiones
Creación de las tablas de verdad• Las definiciones de las operaciones Not, And, Or se
resumen en las tablas conocidas como tablas de verdad.
• Tabla de verdad para el operador Or. (a o b) es verdadera cuando a es verdadera, cuando b es verdadera o cuando ambas son verdaderas.
a b a Or b Ejemplo
verdadero verdadero verdadero (6<10) Or (7<10) Verdadero
verdadero falso verdadero (6<10) Or (10>11) Verdadero
falso verdadero verdadero (10<6) Or (7<10) Verdadero
falso falso falso (10<6) Or (10>11) Falso
Operadores y expresiones
Funciones internas o de bibliotecaAdemás de las operaciones aritméticas básicas, a menudo se requieren operadores especiales tales como las funciones matemáticas, trigonométricas, estadísticas, financieras y muchas más. Enumerarlas todas sería excesivo. Se mostrarán únicamente algunos ejemplos.
Operadores y expresiones
Funciones internas o de biblioteca
Nota: Si se tiene duda sobre una función, es recomendable utilizar las opciones de ayuda.
Nombre de la función Descripción Sintaxis en hoja Excel Sintaxis en Visual BasicAbsoluto Valor absoluto de x "=ABS(x)" "=Abs(x)"Seno Seno de x (x en radianes) "=SENO(x)" "=Sin(x)"Coseno Coseno de x (x en radianes) "=COS(x)" "=Cos(x)"Tangente Tangente de x (x en radianes) "=TAN(x)" "=Tan(x)"Raiz cuadrada Raiz cuadrada de x "=RCUAD(x)" "=Sqr(x)"Logaritmo neperiano Logaritmo neperiano de x "=LN(x)" "=Ln(x)"Truncar Truncar x al entero inferior "=TRUNCAR(x)" "=Trunc(x)"
Operadores y expresiones
Operadores de caracter• El principal operador de caracter es el de
concatenación y permite unir dos cadenas de caracteres.
• Se representa por el símbolo &.• Ejemplo:Nombre = “Juan_”Apellidos =“López_Pérez”Nombre_completo= Nombre&Apellidos
Operadores y expresiones
TIPOS DE SENTENCIAS DE CONTROLTipos principales de sentencias de control:1. Sentencias de selección.
Permiten tomar una decisión basándose en la evaluación de una o más condiciones.
Existen dos tipos: Sentencia “IF” y sentencia “CASE”2. Sentencias de repetición.
Permiten repetir una operaciones varias veces. Existen dos tipos: Sentencia “FOR” y sentencia “WHILE”
Sentencias de control
SENTENCIAS SELECTIVAS “IF” Y “CASE” La toma de decisiones se encuentra prácticamente en todos
los tipos de problemas, pudiendo ir desde decisiones muy sencillas hasta una serie de decisiones “en cascada”
Las estructuras de selección se clasifican en: Estructura selectiva simple (si … entonces …) Estructura selectiva doble (si … entonces, si no …) Estructura selectiva múltiple (si múltiple o “caso 1, caso 2,
…”)
Sentencias selectivas (IF y CASE)
Estructura selectiva simple (si … entonces …)Permite que el flujo siga por un camino específico si se cumple una condición o conjunto de condiciones. Si el resultado es verdadero, ejecuta una operación, si es falso, se “salta” la operación.
Sentencias selectivas (IF y CASE)
Estructura selectiva simple (si … entonces …)Ejemplo: Elabore un programa que lea una calificación numérica y que escriba “aprobado” en caso de que la calificación sea mayor o igual a 7.
Sentencias selectivas (IF y CASE)
Estructura selectiva doble (si… entonces, si no…)Permite que el flujo se bifurque por dos ramas diferentes, ejecutando procesos diferentes en caso de que se cumpla (o no se cumpla) cierta condición o condiciones.
Sentencias selectivas (IF y CASE)
Estructura selectiva doble (si… entonces, si no…)Ejemplo: Elabore un programa que lea una calificación numérica y que escriba “aprobado” en caso de que la calificación sea mayor o igual a 7 y “reprobado” si la calificación es menor que 7.
Sentencias selectivas (IF y CASE)
Estructura selectiva múltiple (Caso)Permite que el flujo tome más de dos caminos distintos, se puede representar mediante una serie de “IF” o mediante la sentencia “CASE”.
Sentencias selectivas (IF y CASE)
Estructura selectiva múltiple (Caso)Permite que el flujo tome más de dos caminos distintos, se puede representar mediante una serie de “IF” o mediante la sentencia “CASE”.
Proceso 1 Proceso 2 Proceso 3
1 2 3
Caso
Sentencias selectivas (IF y CASE)
Estructura selectiva múltiple (Caso)Ejemplo: Elabore un programa que lea una calificación numérica y que escriba un mensaje según la siguiente tabla.
Calificación (Cal) Mensaje
Cal > 10 OR Cal < 0 ERROR
Cal >= 9 Muy bien
9 > Cal >= 8 Bien
8 > Cal >= 7 Regular
Cal < 7 Reprobado
Sentencias selectivas (IF y CASE)
Es muy común encontrar en la práctica algoritmos cuyas operaciones se deben ejecutar un número repetido de veces.
El conjunto de instrucciones que se ejecuta repetidas veces se llama ciclo.
Todo ciclo debe terminar de ejecutarse luego de un número finito de veces. Es necesario evaluar las condiciones para saber si se ha cumplido la condición de paro o de fin de ciclo.
Es indispensable considerar los errores de redondeo asociados a la memoria de las computadoras y tener cierta tolerancia en los errores.
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
SENTENCIA DE REPETICIÓN (FOR o para) Se utiliza cuando se conoce de antemano el número de veces que
se va a repetir una operación o conjunto de operaciones. Comúnmente se emplean contadores de tipo entero, utilizando las
variables i, j y k. Los contadores tienen un incremento o decremento (usualmente
de tipo entero) Comienza con la instrucción “For” y termina con la instrucción
“Next” Pueden existir ciclos que definen matrices de dos o más
dimensiones.
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
SENTENCIA DE REPETICIÓN (FOR o para)Ejemplo 1: Elabore un programa que lea las calificaciones de 10 estudiantes del curso de programación escritos en las celdas A2:A11 (ver tabla) y que escriba en la celda aledaña “Aprobado” si la calificación es ≥ 7 o “Reprobado” si la calificación es menor que 7.
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
Ejemplo 1 FOR
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
Notas:
El ciclo comienza con la sentencia “For” y termina con la sentencia “Next”
“Step” indica el tamaño del paso (1 por default)
SENTENCIA DE REPETICIÓN (WHILE o mientras) Se utiliza cuando no sabemos el número de veces que se va a
repetir una operación o conjunto de operaciones. En esta estructura se distinguen dos partes:
Ciclo: Es el conjunto de instrucciones que se ejecutarán repetidamente
Condición de terminación: Permite decidir cuándo finalizará la ejecución del ciclo.
Debe existir también un enunciado dentro del ciclo que afecte la condición de terminación. Si no se hace, ¡El ciclo no tendrá fin!
Comienza con la sentencia “While” y termina con la sentencia “Wend”
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
SENTENCIA DE REPETICIÓN (WHILE o mientras)Ejemplo 1 Elabore un programa que permita leer una calificación,
asegurándose que esté comprendida entre 0 y 10, mediante un ciclo mientras.
Una vez leída la calificación, determina si es aprobatoria o no
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
SENTENCIA DE REPETICIÓN (WHILE o mientras)Ejemplo 2 Mejore el programa anterior para que, mediante
una caja de diálogo MsgBox, dé la opción a leer más calificaciones y vaya generando una tabla de calificaciones y resultados (Aprobado o Reprobado), mostrando también el promedio calculado para las calificaciones leídas.
SENTENCIAS DE REPETICIÓN (FOR y WHILE)
DEFINICIÓN DE ARREGLOSUn arreglo permite referirse a una serie de elementos del mismo tipo con un mismo nombre.
Arreglos
X1 = 10 X(1) = 10
X(2) = 20
X(3) = 20
….
X(n) = …
Variable simple Arreglo de 1 dimensión, tamaño n
DEFINICIÓN DE ARREGLOSEn Visual Basic se pueden definir arreglos de hasta 60 dimensiones.
Los arreglos pueden ser estáticos o dinámicos.
Arreglos
3 x 1 3 x 3 3 x 3 x 3
Declaración de un arreglo estático de una sola dimensión.
Para declarar un arreglo, se utiliza la sentencia Dim seguida del nombre del arreglo, sus dimensiones (entre paréntesis) y su tipo.Ejemplo:
Declara el arreglo llamado “vector” de 20 elementos (21 elementos si consideramos el 0)
Dim vector(20) As Double
Arreglos
Lectura y escritura de datos de un arreglo de una dimensiónLa lectura y escritura de datos de un arreglo de una dimensión, se suele efectuar usando un ciclo “for”, referenciándose a celdas específicas.
Aunque también se pueden utilizar cajas de diálogo de tipo InputBox, resulta menos práctico cuando se tienen demasiados datos.
Arreglos
Lectura y escritura de datos de un arreglo de una dimensiónEjemplo: Crear un programa que lea 20 datos de tipo doble precisión desde las celdas A2 hasta A21, los guarde en un arreglo llamado “datos”, que calcule el cubo de los números y lo guarde en un arreglo llamado “cubos” y que lo escriba en las celdas B2 hasta B21.
Arreglos
Lectura y escritura de datos de un arreglo de una dimensión
Arreglos
Ver módulo 1 del programa arreglos1
Declaración de un arreglo estático de dos dimensionesUn arreglo de dos dimensiones incluye el número de líneas y de columnas.Ejemplo:
Declara el arreglo llamado “matriz” conteniendo 3 filas x 3 columnas = 9 elementos
Dim matriz(3,3) As Double
Arreglos
3 x 3
Lectura y escritura de datos de un arreglo estático de dos dimensionesLa lectura y escritura de datos de un arreglo de dos dimensiones, se suele realizar mediante un ciclo “for” anidado (dentro de otro ciclo for), referenciándose a celdas específicas.
Arreglos
Lectura y escritura de datos de un arreglo estático de dos dimensionesEjemplo: Crear un programa que escriba la matriz unidad de 5x5 a partir de la celda B2 (Hoja2)
Arreglos
Arreglos dinámicos - DefiniciónSon arreglos en los que la definición de las dimensiones se hace durante la ejecución del programa.Permiten ahorrar espacio en memoria.
Arreglos
Declaración de arreglos dinámicosPara declarar un arreglo dinámico, se declara como un arreglo estático, pero dejando vacío el paréntesis.
Más tarde, durante la ejecución del programa, se puede dimensionar utilizando valores de variables calculadas o leídas, usando la instrucción ReDim
Arreglos
Arreglos dinámicos - Ejemplo.Crear un programa que escriba las tablas de multiplicar (n renglones, m columnas), máximo 100 x 100.
Arreglos
Son n renglones
Son m columnas
¿Se puede prescindir de los arreglos? SI SE PUEDE
Arreglos
Comparar módulo 3 con módulo 4 del programa arreglos1
Es muy recomendable dividir los programas grandes en una serie de módulos más pequeños y manejables. Estos módulos reciben distintos nombres:
– Subprogramas– Subrutinas– Procedimientos– Funciones (que es un tipo especial de módulo)
• Estos módulos son “llamados” y utilizados por el programa principal.
• En Visual Basic, los únicos módulos que devuelven un valor son las funciones (Function)
Procedimientos o subrutinas
Ventajas de la programación modular:1. Modularización: Cada módulo tiene pocas líneas y es más
manejable y reutilizable dentro del mismo programa u en otros programas.
2. Ahorro en memoria y tiempo de desarrollo. Al reutilizar los procedimientos, disminuye el número total de líneas del programa.
3. Independencia de datos. Cada módulo puede mantener sus propios datos locales. Es más fácil detectar y corregir errores, ya que en programas muy grandes es frecuente que al corregir un error fallen otras partes del programa que ya funcionaban.
Procedimientos o subrutinas
Tipos de procedimientos en Visual Basic Existen dos tipos fundamentales de procedimientos en Visual Basic:
1. Funciones (Function): Devuelven un valor único a partir de un conjunto de datos o variables.
2. Procedimientos Sub: No devuelven un valor, sino que realizan una tarea o una serie de tareas específicas.
Procedimientos o subrutinas
Definición Una función es un procedimiento que devuelve un valor único. Excel cuenta con muchas funciones “de biblioteca”. Se pueden programar funciones específicas en Visual Basic. La sintaxis general para una función es:
La declaración del tipo de variable de los parámetros y del retorno es opcional. Si se omite usa el tipo “Variant”
Dentro de las sentencias, pueden incluirse variables locales, ciclos, sentencias de control, etc…
Function nombre(parámetros As Tipo) As Tipo(sentencias)nombre=expresiónEnd Function
Funciones
Estructura
Function nombre(parámetros As Tipo) As Tipo(sentencias)nombre=expresiónEnd Function
Valor de retorno (se usa el mismo nombre de la función)
Funciones
Nombre de la función Variables de entrada
Ejemplo• Ejemplo: Crear una función que calcule el volumen de una esfera.• Nota: Utliiza una variable local llamada pi
Nombre de la función Variables de entrada
Valor de retorno (se usa el mismo nombre de la función)
Funciones
Funcionamiento• Ya que la función ha sido construida, se puede utilizar dentro de
una hoja Excel como si fuera una de las funciones de biblioteca (únicamente disponible en el libro actual)
• Los parámetros (o variables) pueden estar referidos a valores de una celda o bien pueden ser valores introducidos directamente.
Funciones
Llamada a un procedimiento Sub• Un procedimiento Sub puede ser llamado desde el programa
principal (o desde otro procedimiento) por cualquiera de las dos maneras.
Call nombre_del_subprograma (argumentos)
nombre_del_subprograma argumento1, argumento2, …
Procedimientos o subrutinas
Ejemplo• Ejemplo Elabore un programa modular que sirva para calcular
el área y el volumen de una esfera.• Módulo 1: Limpia las celdas de las columnas A:C• Módulo 2: Lee el valor del radio (radio≥0)• Modulo 3: Muestra el radio, el volumen y el área en una caja de diálogo
MsgBox• Módulo 4: Muestra el radio, el volumen y el área en la hoja de Excel.
• Función 1: area = 4 * pi * radio ^ 2 Función 2: volumen = (4 / 3) * pi * radio ^ 3
Procedimientos o subrutinas
Ejemplo Elabore un programa modular que sirva para calcular el área y el volumen de una esfera.
PROGRAMA PRINCIPAL
Nótese que se está declarando una variable global
Procedimientos o subrutinas
Ejemplo Elabore un programa modular que sirva para calcular el área y el volumen de una esfera.
MÓDULO DE LIMPIEZA
MODULO DE LECTURA DE DATOS
Procedimientos o subrutinas
Ejemplo Elabore un programa modular que sirva para calcular el área y el volumen de una esfera.
MÓDULO DE RESULTADOS MsgBox
MÓDULO DE RESULTADOS en Excel
Procedimientos o subrutinas