Documente Academic
Documente Profesional
Documente Cultură
Objetivos
Conocer los diferentes tipos básicos de datos en lenguaje VB.
Manejar expresiones.
1. TIPOS DE DATOS.
En la formula 2πr observamos diferentes tipos de datos.
Por un lado los valores 2 y π que son constantes y no podrán ser modificados. Pero 2 es un
valor constante literal y π es un valor constante con nombre.
En cuanto a r es un valor variable . Estos conceptos son importantes a la hora de trabajar con
datos .
1.1. CONSTANTES.
Son valores que no cambian durante la ejecución de la aplicación. Las constantes pueden ser
numéricas y alfanuméricas.
Constantes literales
Las constantes numéricas admiten valores decimales, hexadecimales (base 16) y octales (base 8):
Decimales: 10,1784, 28
Las constantes alfanuméricas o de caracteres son para cadenas de letras, también pueden
almacenar número pero no permiten realizar operaciones aritméticas:
1.2. VARIABLES
Una variable es el campo donde almacenaremos un valor que podrá ser modificado durante la
ejecución de la aplicación.
En versiones anteriores VB nos permitía utilizar variables sin definición previa. Ahora nos obliga
a declarar las variables antes de utilizarlas: Declaración explicita de variables y nos permite
especificar si queremos que nos obligue a declarar el tipo datos: Declaración estricta.
Podemos desactivar estas dos Opciones, no se recomienda no hacerlo.
Para desactivar la
declaración Explicita:
Option Expilcit=OF
Las variables son necesarias declararlas con la sentencia Dim, que tiene el siguiente formato:
2
caracter Char System.Char 2 bytes 0 a 65535 (sin signo)
fecha Date System.DateTime 8 bytes 0:00:00 del 1 de enero de 0001 a 11:59:59 PM del 31
de diciembre de 9999.
Nueros Decimal System.Decimal 16 bytes 0 a +/-79.228.162.514.264.337.593.543.950.335 sin
reales separador decimal;
0 a +/-7,9228162514264337593543950335 con 28
posiciones a la derecha del signo decimal; el número
más pequeño distinto de cero es
+/-0,0000000000000000000000000001 (+/-1E-28).
Double System.Double 8 bytes -1,79769313486231570E+308 a
(punto flotante con -4,94065645841246544E-324 para valores negativos;
precisión doble) 4,94065645841246544E-324 a
1,79769313486231570E+308 para valores positivos.
Single System.Single 4 bytes -3,4028235E+38 a –1,401298E-45 para valores
(punto flotante con negativos; 1,401298E-45 a 3,4028235E+38 para
precisión simple) valores positivos.
enteros Byte System.Byte 1 byte 0 a 255 (sin signo)
Integer System.Int32 4 bytes -2.147.483.648 a 2.147.483.647
Long System.Int64 8 bytes -9.223.372.036.854.775.808 a
(entero largo) 9.223.372.036.854.775.807
Short System.Int16 2 bytes -32.768 a 32.767
Object System.Object (clase) 4 bytes Cualquier tipo puede almacenarse en una variable de
tipo Object.
Cadenas String System.String (clase) En función de la De 0 a 2.000 millones de caracteres Unicode aprox.
de (cadena de longitud plataforma de
caracteres variable) implementación
Tipo de datos (hereda de En función de la Cada miembro de la estructura tiene un intervalo de
definido por el System.ValueType) plataforma de valores determinado por su tipo de datos e
usuario implementación independiente de los intervalos de valores
(estructura) correspondientes a los demás miembros.
CONSIDERACIONES:
Las variables de tipo Char se almacenan como números de 16 bits (2 byte) sin signo con valores
comprendidos entre 0 y 65535. Cada número representa un único carácter Unicode.
Los datos numéricos se pueden convertir a datos lógicos. El valor 0 es False y distinto de cero es True.
Para convertir los lógicos a numéricos False se convierte en 0 y True en -1.
Los valores literales de fechas y horas deben expresarse en un formato reconocible por windows,
encerrados por el carácter (#). Ejemplo:
#15/05/95 14:30:15#
#15Mayo1995 14:30#
Si convierte un valor Date a un tipo String, la fecha se procesa en función del formato de fecha corta
reconocida por el equipo y la hora se procesa en función del formato de hora que tenga el equipo (12
horas o 24 horas).
Si se agrega el carácter de tipo I a un literal, se convierte el tipo de datos del literal al tipo de datos
Integer. Si se agrega el carácter de declaración de tipo % a cualquier identificador, se convierte su
tipo de datos al tipo Integer. Ejemplo: Dim Contador%
Los números enteros se especifican por los tipos Byte,Short,Integer y Long según el tamaño.
Si se agrega el carácter de tipo L a un literal, se convierte el tipo de datos del literal al tipo de
datos Long. Si se agrega el carácter de declaración de tipo & a cualquier identificador, se
convierte su tipo de datos al tipo Long. Ejemplo: Dim largo&..
Si se agrega el carácter de tipo S a un literal, se convierte el tipo de datos del literal al tipo de
datos Short.
3
Si se agrega el carácter de tipo F a un literal, se convierte el tipo de datos del literal al tipo de
datos Single. Si se agrega el carácter de tipo de identificador ! a cualquier identificador, se
convierte su tipo de datos al tipo Single. Ejemplo Dim area!
Si se agrega el carácter de tipo R a un literal, se convierte el tipo de datos del literal al tipo de
datos Double. Si se agrega el carácter de declaración de tipo # a cualquier identificador, se
convierte su tipo de datos al tipo Double. Ejemplo: Dim radio#
Cuando se declaran variables, las variables numéricas sé inicializan a 0, las cadenas de longitud variable
se inicializan a cadena de longitud cero, y las cadenas de longitud fija se rellenan con ceros.
Ejemplos de declaraciones:
Dim x,y,z As Integer,
Dim q,w As Single, r as Double
1.2.1 INICIALIZACIÓN DE VARIABLES.
2. DECLARACIÓN DE MATRICES:
2..1 Definir Matrices.
Para declarar matrices necesitamos: nombre, numero de elementos y tipo de datos.
1. Dim a(9) As Integer ‘ define un array de 10 elementos enteros
2. Dim b() As Double ‘ define un array de números Double sin especificar el
tamaño
3. Dim cadena(11) As String ‘ define un array de 12 elementos de tipo cadena
Si conocemos a priori el tamaño de la matriz podemos usar este dato en su definición, ejemplos
1 y 3 ,si no lo conocemos podemos hacerlo como el segundo ejemplo y más adelante lo
redefiniremos con su tamaño.
Como se puede apreciar el número de elementos se expresa teniendo en cuenta que el número
expresado entre paréntesis es el valor mayor que puede tomar el índice, ya que en Net los arrays
van de 0 al valor del índice expresado en su definición. Así el primer ejemplo tiene 10 elementos
enteros accesibles con índices del 0 al 9.
4
Dim s() As String = {"hh", "bb"}
Length Obtiene un entero de 32 bits que representa el número total de elementos de todas las dimensiones de
Array.
a.Length nos dará 10 y a.Length-1 nos dará 9 que es el valor mayor del índice, dato
interesante para utilizar el el bucle que recorrerá la matriz.
LongLength Obtiene un entero de 64 bits que representa el número total de elementos de todas las dimensiones de
Array.
Rank Obtiene el rango (número de dimensiones) de Array. Ejemplo: K.Rank
5
2.6 Métodos para matrices.
BinarySearch Busca un valor en una matriz Array unidimensional y ordenada utilizando un algoritmo de búsqueda
binario.
Clear Establece un intervalo de elementos de Array en cero, false o una referencia nula (Nothing en Visual
Basic), en función del tipo de elemento.
.
Clone Crea una copia superficial de Array.
Copy Copia una sección de una matriz Array en otra matriz Array y realiza la conversión de tipos y la
conversión boxing de tipos necesarias.
CopyTo Copia todos los elementos del objeto Array unidimensional actual en el objeto Array unidimensional
especificado a partir de una posición. Debemos tener la precaución del numero de elementos de los
arrays sean correctos.
a.CopyTo(b, 0)
de Object)
GetHashCode (se Sirve como función hash para un tipo concreto, apropiado para su utilización en algoritmos de hash y
estructuras de datos como las tablas hash.
hereda de Object)
GetLength Obtiene un entero de 32 bits que representa el número de elementos de la dimensión especificada de
Array.
GetLongLength Obtiene un entero de 64 bits que representa el número de elementos de la dimensión especificada de
Array.
Obtiene el límite inferior de la dimensión especificada de Array. Siempre será cero
GetLowerBound
GetType Obtiene el objeto Type de la instancia actual.
GetValue Obtiene el valor del elemento especificado de la matriz Array actual. Los índices se especifican en forma
de una matriz de enteros de 32 bits.
.
IndexOf Devuelve el índice de la primera aparición de un valor en una matriz Array unidimensional o en una
parte de la matriz Array.
.
Initialize Inicializa todos los elementos de la matriz Array de tipo de valor llamando al constructor
predeterminado del tipo de valor.
LastIndexOf Sobrecargado. Devuelve el índice de la última aparición de un valor en una matriz Array unidimensional
o en una parte de la matriz Array.
Reverse Invierte el orden de los elementos de una matriz Array unidimensional o de una parte de Array.
b.Reverse(b)
6
3. ÁMBITO DE LAS VARIABLES.
Las constantes y variables tienen los siguientes ámbitos:
1. Nivel de bloque: dentro de un bloque de código, ejemplo If….En if
2. Nivel de procedimiento: (Local)dentro de un procedimiento
3. Nivel de módulo. Visible para todos los procedimientos almacenados para el mismo
módulo. Se declara en la sección de Declaraciones.
Después de realizada la definición, se pueden declarar variables del tipo definido usando la
sentencia Dim.
Para poder acceder a los valores individuales se hace especificando el nombre de la variables, un
punto y el del elemento. Ejemplos:
Ramon.telefono=9682345678
Ramon=Pepe
5. COMENTARIOS.
Es posible que en ocasiones sea necesario incluir algún comentario en un programa. Un
comentario es una línea que Visual Basic ignorará cuando ejecute la aplicación, pero
que será muy útil para nosotros al comprobar los listados.
Para insertar un comentario basta con colocar una comilla simple delante de la frase.
Los comentarios pueden estar situados detrás de una sentencia de Visual Basic:
' esto es un ejemplo de un comentario
6. OPERADORES
Un operador suele estar representado por un símbolo y como su nombre indica realiza
una operación. Las operaciones pueden ser lógicas, relacionales y aritméticas.
Aritméticos
7
+ (Suma) - (Resta) - (Cambio de signo)
* (Multiplicación) / (División) ^ (Exponente) \ (División entera)
Mod (Resto división entera)
Relacionales
Lógicos
a b a And b A Or b Not a
Not (No) Verdadero Verdadero Verdadero Verdadero Falso
And (Y) Verdadero Falso Falso Verdadero Verdadero
Or (O) Falso Verdadero Falso Verdadero
Falso Falso Falso Falso
ejemplos:
8
En estos ejemplos se utiliza el operador Imp para ejecutar una implicación lógica con
dos expresiones.
• Los operadores relacionales dan como resultado los valores True (condición
cierta), False (condición falsa) o Null (no válido).
En VB el valor Null indica que la variable no tiene un valor válido.
- carácter a carácter.
OTROS
ejemplo:
Nombre = “Daniel”
print “mi nombre es “ & Nombre
resultado : Mi nombre es Daniel
? Sólo un carácter.
* Ninguno o más caracteres.
Ejemplos:.
7) <,>,>=,>=,=,<> Relacionales
8) Not
9) And
10) Or Lógicos
11) Xor
12) Equ
13) Imp
6. EJERCICIOS:
1) Escribir en expresión Visual Basic las siguientes expresiones algebraicas:
a) 3x +5
10
b) x2+y 2
c) (U+V)K-1
d)
a c −m
3
+
b 4
e)
6 .8
(a + b )
2
−
7 .2 a
b + c
R = c
(a − c )
1
n
1
f)
⎡ 2ab t ⎤
3
f = +
⎢ c +1 3( p + q )⎥
⎣ ⎦
• X + y + z + PI - E + 2,576689
• (Not(2 * x = y / 2 Or (PI- E) >y)) = ( Not y / 2 = 2 *x) And Not y <( PI - E) * z
• x>3 And (y =4 Or x+y <= z)
11