61
Programación Programación Aplicada de Aplicada de Computadoras Computadoras Lección #3 – Manejo de la Lección #3 – Manejo de la Memoria e Input/Output Memoria e Input/Output Prof. Antonio F. Huertas Prof. Antonio F. Huertas

Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Embed Size (px)

Citation preview

Page 1: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Programación Programación Aplicada de Aplicada de ComputadorasComputadoras

Lección #3 – Manejo de la Lección #3 – Manejo de la Memoria e Input/OutputMemoria e Input/Output

Prof. Antonio F. HuertasProf. Antonio F. Huertas

Page 2: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Tipos de datosTipos de datos

Todo valor que la computadora recibe Todo valor que la computadora recibe o produce tiene un tipo de datos.o produce tiene un tipo de datos.

Los principales tipos de datos son:Los principales tipos de datos son:– Numérico – número que se puede usar en Numérico – número que se puede usar en

un cálculo matemático.un cálculo matemático.– Alfanumérico – cualquier conjunto de Alfanumérico – cualquier conjunto de

símbolos. Incluye letras, dígitos y símbolos. Incluye letras, dígitos y caracteres tales como $ y %. No se puede caracteres tales como $ y %. No se puede usar en un cálculo matemático.usar en un cálculo matemático.

– Lógico – los valores Lógico – los valores TrueTrue (cierto) y (cierto) y FalseFalse (falso).(falso).

Page 3: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Tipo de datos Tipo de datos numériconumérico Los datos numéricos son aquellos que Los datos numéricos son aquellos que

se puede usar en un cálculo se puede usar en un cálculo matemático.matemático.

Se clasifican en:Se clasifican en:– Números Enteros – números que no tienen Números Enteros – números que no tienen

punto decimal. Ej.: -23, -6, 0, 14, 9875punto decimal. Ej.: -23, -6, 0, 14, 9875– Números Reales – números que pueden Números Reales – números que pueden

tener punto decimal. Ej.: -54.6, -1.334, 0.5, tener punto decimal. Ej.: -54.6, -1.334, 0.5, 14.0, 2.73E4, 2.73E-414.0, 2.73E4, 2.73E-4

Los números no incluyen unidades de Los números no incluyen unidades de medida ni unidades monetarias.medida ni unidades monetarias.

Page 4: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Tipo de datos Tipo de datos numérico (cont.)numérico (cont.) Note que los datos numéricos no llevan Note que los datos numéricos no llevan

comas para separar los millares.comas para separar los millares.– MatemáticasMatemáticas Visual BasicVisual Basic

------------------------------ ---------------------------- 19,87519,875 19875 19875

La notación científica se expresa usando La notación científica se expresa usando la letra E que simboliza la letra E que simboliza × 10× 10nn..– MatemáticasMatemáticas Visual BasicVisual Basic

------------------------------ ----------------------------2.73 2.73 ×× 10 1044 2.73E42.73E42.73 2.73 ×× 10 10-4-4 2.73E-42.73E-4

Page 5: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Tipo de datos Tipo de datos alfanuméricoalfanumérico Los datos alfanuméricos incluyen letras, Los datos alfanuméricos incluyen letras,

dígitos y símbolos tales como $ y %.dígitos y símbolos tales como $ y %. No se puede usar en un cálculo No se puede usar en un cálculo

matemático.matemático. A un valor alfanumérico se le llama A un valor alfanumérico se le llama

caracter.caracter. Se escriben siempre entre comillas.Se escriben siempre entre comillas.

– Ej.: “A”, “a”, “&”, “casa”, “9875”, “Fulano Ej.: “A”, “a”, “&”, “casa”, “9875”, “Fulano de Tal”de Tal”

Page 6: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Tipo de datos lógicoTipo de datos lógico

Los datos lógicos incluyen los valores Los datos lógicos incluyen los valores TrueTrue (cierto) y (cierto) y FalseFalse (falso). (falso).

El tipo de datos lógico se conoce El tipo de datos lógico se conoce también como también como booleanobooleano..

El resultado de una comparación es El resultado de una comparación es siempre un valor booleano.siempre un valor booleano.

Page 7: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos numéricosnuméricos Para procesar datos numéricos se Para procesar datos numéricos se

pueden usar operadores aritméticos y pueden usar operadores aritméticos y operadores de comparación.operadores de comparación.

Operadores Aritméticos:Operadores Aritméticos:– Suma (+) y Resta (-)Suma (+) y Resta (-)– Multiplicación (*) y División de Reales (/)Multiplicación (*) y División de Reales (/)– División de Enteros (\) y Módulo (Mod)División de Enteros (\) y Módulo (Mod)– Exponenciación (^)Exponenciación (^)

Page 8: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos numéricos (cont.)numéricos (cont.) La suma, resta, multiplicación y La suma, resta, multiplicación y

exponenciación producen resultado entero exponenciación producen resultado entero si ambos operandos son enteros. De lo si ambos operandos son enteros. De lo contrario, producen resultado real.contrario, producen resultado real.

Ejemplos del uso de operadores Ejemplos del uso de operadores aritméticos:aritméticos: 5 + 8 = 135 + 8 = 13 5.72 + 8.4 = 14.125.72 + 8.4 = 14.12 9.7 * 3 = 29.19.7 * 3 = 29.1 8 ^ 2 = 648 ^ 2 = 64 5632 – 23 = 56095632 – 23 = 5609

Page 9: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos numéricos (cont.)numéricos (cont.) La división es un caso especial ya que La división es un caso especial ya que

hay dos tipos de divisiones:hay dos tipos de divisiones:– División de Reales (/) – resultado siempre División de Reales (/) – resultado siempre

es reales real– División de Enteros (\) – requiere División de Enteros (\) – requiere

operandos enteros y resultado siempre es operandos enteros y resultado siempre es enteroentero

– Residuo de la División de Enteros o Módulo Residuo de la División de Enteros o Módulo (Mod) – requiere operandos enteros y (Mod) – requiere operandos enteros y resultado siempre es enteroresultado siempre es entero

Page 10: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos numéricos (cont.)numéricos (cont.) Ejemplos del uso de división y módulo:Ejemplos del uso de división y módulo:

7.5 / 2 = 3.757.5 / 2 = 3.75 7 / 2 = 3.57 / 2 = 3.5 7 \ 2 = 37 \ 2 = 3 el cociente enteroel cociente entero 7 Mod 2 = 17 Mod 2 = 1 el residuoel residuo 7.5 \ 2 = Error7.5 \ 2 = Error 7.5 Mod 2 = Error7.5 Mod 2 = Error

Page 11: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos numéricosnuméricos Operadores de Comparación (o Operadores de Comparación (o

Relacionales):Relacionales):– Menor que (<)Menor que (<)– Mayor que (>)Mayor que (>)– Menor o igual a (<=)Menor o igual a (<=)– Mayor o igual a (>=)Mayor o igual a (>=)– Igual a (=)Igual a (=)– No igual a (<>)No igual a (<>)

El resultado de una comparación es El resultado de una comparación es siempre un valor booleano.siempre un valor booleano.

Page 12: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos numéricosnuméricos Ejemplos del uso de operadores Ejemplos del uso de operadores

relacionales:relacionales: 7 = 77 = 7 TrueTrue 7 = 7.07 = 7.0 TrueTrue 8 < 10.678 < 10.67 TrueTrue 4.3 = 94.3 = 9 FalseFalse 4.3 <= 94.3 <= 9 TrueTrue 4.3 >= 94.3 >= 9 FalseFalse 4.3 <> 94.3 <> 9 TrueTrue

Page 13: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos alfanuméricosalfanuméricos Para procesar datos alfanuméricos se Para procesar datos alfanuméricos se

pueden usar el operador de pueden usar el operador de concatenación y los operadores de concatenación y los operadores de comparación.comparación.

La concatenación (&) junta dos o más La concatenación (&) junta dos o más alfanuméricos para producir un nuevo alfanuméricos para producir un nuevo valor alfanumérico. valor alfanumérico.

Ejemplos:Ejemplos: ““ca” & “sa” = “casa”ca” & “sa” = “casa” ““Pedro” & “Pérez” = “PedroPérez”Pedro” & “Pérez” = “PedroPérez” ““Pedro” & “b” & “Pérez” = “Pedro Pérez”Pedro” & “b” & “Pérez” = “Pedro Pérez”

Page 14: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos alfanuméricos (cont.)alfanuméricos (cont.) Los datos alfanuméricos también se Los datos alfanuméricos también se

pueden comparar usando los operadores pueden comparar usando los operadores relacionales (<, <=, >, >=, =, <>).relacionales (<, <=, >, >=, =, <>).

Esto se puede hacer debido a que cada Esto se puede hacer debido a que cada carácter alfanumérico tiene asociado un carácter alfanumérico tiene asociado un código, llamado el código ASCII (o ANSI).código, llamado el código ASCII (o ANSI).

En este código, las letras se encuentran En este código, las letras se encuentran en orden alfabético (de la “A” a la “Z”) y en orden alfabético (de la “A” a la “Z”) y los dígitos se encuentran ordenados del los dígitos se encuentran ordenados del “0” al “9”.“0” al “9”.

Page 15: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos alfanuméricos (cont.)alfanuméricos (cont.) En el código ASCII, los caracteres que En el código ASCII, los caracteres que

representan los dígitos van antes de representan los dígitos van antes de los caracteres que representan las los caracteres que representan las letras mayúsculas y éstas van antes letras mayúsculas y éstas van antes de los caracteres que representan las de los caracteres que representan las letras minúsculas .letras minúsculas .

Page 16: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos alfanuméricos (cont.)alfanuméricos (cont.) Ejemplos del uso de operadores Ejemplos del uso de operadores

relacionales:relacionales: ““bota” < “bote”bota” < “bote” TrueTrue ““bota” = “Bota”bota” = “Bota” FalseFalse ““Bota” < “bota”Bota” < “bota” TrueTrue ““100” > “25”100” > “25” False (!False (!Mucho ojoMucho ojo!)!) ““hola” > “adios”hola” > “adios” TrueTrue

Page 17: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos lógicoslógicos Para procesar datos lógicos se usan los Para procesar datos lógicos se usan los

operadores And, Or y Not. Estos operadores And, Or y Not. Estos operadores se definen mediante las operadores se definen mediante las siguientes Tablas de la Verdad.siguientes Tablas de la Verdad.

Si Si AA y y BB son booleanos, son booleanos, A And BA And B es es TrueTrue sólo si sólo si AA y y BB son ambos son ambos TrueTrue..A B A And B

True True True

True False False

False True False

False False False

Page 18: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos lógicos (cont.)lógicos (cont.) Si Si AA y y BB son booleanos, son booleanos, A Or BA Or B es es TrueTrue si si AA

es es TrueTrue, , BB es es True True o ambos son o ambos son TrueTrue.. Si Si AA es booleano, es booleano, Not A Not A es es TrueTrue si si AA es es

False False y viceversa.y viceversa.

A B A Or B

True True True

True False True

False True True

False False False

A Not A

True False

False True

Page 19: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Trabajando con datos Trabajando con datos lógicos (cont.)lógicos (cont.) Ejemplos del uso de los operadores Ejemplos del uso de los operadores

lógicos:lógicos: True And FalseTrue And False FalseFalse True Or FalseTrue Or False TrueTrue Not TrueNot True FalseFalse True And TrueTrue And True TrueTrue True Or TrueTrue Or True TrueTrue Not FalseNot False TrueTrue

Page 20: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Jerarquía de los Jerarquía de los operadoresoperadores Cuando aparece más de un operador en una Cuando aparece más de un operador en una

expresión, Visual Basic aplica una jerarquía de expresión, Visual Basic aplica una jerarquía de operadores parecida a la de las Matemáticas:operadores parecida a la de las Matemáticas: ()() De adentro hacia afueraDe adentro hacia afuera ^̂ *, /*, / De izquierda a derechaDe izquierda a derecha \\ ModMod +, -+, - De izquierda a derechaDe izquierda a derecha <, <=, >, >=, =, <> <, <=, >, >=, =, <> De izquierda a derechaDe izquierda a derecha NotNot AndAnd OrOr

Page 21: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Jerarquía de los Jerarquía de los operadores (cont.)operadores (cont.) Ejemplos:Ejemplos:

7 + 8 * 3 = 7 + 24 = 317 + 8 * 3 = 7 + 24 = 31 (7 + 8) * 3 = 15 * 3 = 45(7 + 8) * 3 = 15 * 3 = 45 100 \ 5 ^ 2 = 100 \ 25 = 4100 \ 5 ^ 2 = 100 \ 25 = 4 7 + 8 * 3 < 100 \ 5 ^ 2 7 + 8 * 3 < 100 \ 5 ^ 2

31 < 431 < 4 FalseFalse

9 >= 13 Or 5 > 4 And 75 <> 49 >= 13 Or 5 > 4 And 75 <> 4 False Or True And TrueFalse Or True And True False Or TrueFalse Or True TrueTrue

Page 22: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

ExpresionesExpresiones

Una expresión es un conjunto de Una expresión es un conjunto de operadores que actúan sobre operadores que actúan sobre operandos para producir un resultado.operandos para producir un resultado.

El resultado que produce una expresión El resultado que produce una expresión comúnmente se asigna a una variable.comúnmente se asigna a una variable.

Ejemplo:Ejemplo: n = 15 - 6 + 4n = 15 - 6 + 4

variable expresión

Page 23: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Expresiones (cont.)Expresiones (cont.)

Reglas para escribir expresiones:Reglas para escribir expresiones:– Los operadores como ^ y * deben ser Los operadores como ^ y * deben ser

explícitos.explícitos.– Las fracciones se deben escribir como Las fracciones se deben escribir como

divisiones usando paréntesis para agrupar.divisiones usando paréntesis para agrupar.– No se permite el uso de corchetes para No se permite el uso de corchetes para

agrupar, sólo el uso de parétesis.agrupar, sólo el uso de parétesis.

Page 24: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Expresiones (cont.)Expresiones (cont.)

Ejemplos:Ejemplos:– MatemáticasMatemáticas - Visual Basic- Visual Basic

------------------------------ -------------- --------------

2(372(3744 + 5) + 5) 2 * (37 ^ 4 + 5) 2 * (37 ^ 4 + 5)

5 + 85 + 8 (5 + 8) / (3 * a) (5 + 8) / (3 * a)

3a3a

[3(7 – 2) + 5][3(7 – 2) + 5]88 (3 * (7 – 2) + 5) ^ 8(3 * (7 – 2) + 5) ^ 8

Page 25: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Enunciados de Enunciados de asignaciónasignación Los enunciados de asignación Los enunciados de asignación

permiten asignar el resultado de una permiten asignar el resultado de una expresión a una variable.expresión a una variable.

Formato:Formato:– nombreVariablenombreVariable = = expresiónexpresión– Ej.: Ej.: areaCirculo = PI * radio ^ 2areaCirculo = PI * radio ^ 2

Fíjese que a la izquierda sólo puede Fíjese que a la izquierda sólo puede aparecer una variable y que la aparecer una variable y que la expresión de la derecha puede expresión de la derecha puede contener variables, constantes contener variables, constantes simbólicas y literales.simbólicas y literales.

Page 26: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Variables y constantesVariables y constantes

Una variable es un valor que puede Una variable es un valor que puede cambiar durante la ejecución del cambiar durante la ejecución del programa.programa.– Los nombres de las variables deben ser Los nombres de las variables deben ser

significativos.significativos. Una constante es un valor que no cambia Una constante es un valor que no cambia

durante la ejecución del programa.durante la ejecución del programa. Una constante se clasifica como:Una constante se clasifica como:

– Literal – un valorLiteral – un valor– Constante simbólica – un nombre significativo Constante simbólica – un nombre significativo

asociado a un valor constanteasociado a un valor constante

Page 27: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Variables y constantesVariables y constantes

Ejemplo: La fórmula para calcular el Ejemplo: La fórmula para calcular el área de un círculo esárea de un círculo es– areaCirculo = PI * radio ^ 2areaCirculo = PI * radio ^ 2

Cualquier valor que se pregunte y Cualquier valor que se pregunte y cualquier valor que sea resultado de cualquier valor que sea resultado de un proceso debe colocarse en una un proceso debe colocarse en una variable con un nombre significativo.variable con un nombre significativo.

variable constante variable literal

simbólica

Page 28: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

IdentificadoresIdentificadores

Los nombres de las variables, Los nombres de las variables, constantes y de los controles se constantes y de los controles se conocen como identificadores.conocen como identificadores.

Los identificadores pueden tener Los identificadores pueden tener letras, dígitos y subrayados pero letras, dígitos y subrayados pero deben comenzar con una letra.deben comenzar con una letra.

Los identificadores no pueden Los identificadores no pueden contener espacios, eñes, acentos u contener espacios, eñes, acentos u otro caracter especial.otro caracter especial.

Page 29: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Identificadores (cont.)Identificadores (cont.)

Como buen hábito de programación Como buen hábito de programación los identificadores deben ser nombres los identificadores deben ser nombres descriptivos.descriptivos.

Por costumbre, los identificadores para Por costumbre, los identificadores para constantes se escriben usando letras constantes se escriben usando letras mayúsculas y subrayado.mayúsculas y subrayado.– Ej.: PI, DIAS_POR_SEMANAEj.: PI, DIAS_POR_SEMANA

Por costumbre, los identificadores para Por costumbre, los identificadores para variables se escriben usando letras variables se escriben usando letras minúsculas y mayúsculas.minúsculas y mayúsculas.– Ej.: areaCirculo, millasRecorridasEj.: areaCirculo, millasRecorridas

Page 30: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Declaración de Declaración de variablesvariables Para poder usar una variable hay que Para poder usar una variable hay que

indicarle a la computadora cúal es su indicarle a la computadora cúal es su nombre y cuál es su tipo de datos.nombre y cuál es su tipo de datos.

Formato:Formato:– Dim Dim nombreVariablenombreVariable As As tipoDatostipoDatos– En Visual Basic .NET, el tipo de datos En Visual Basic .NET, el tipo de datos

puede ser Integer (número entero), Double puede ser Integer (número entero), Double (número real), String (valor alfanumérico) (número real), String (valor alfanumérico) o Boolean (valor lógico).o Boolean (valor lógico).

Page 31: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Declaración de Declaración de variables (cont.)variables (cont.) Ejemplos:Ejemplos:

– Dim areaCirculo As DoubleDim areaCirculo As Double– Dim edadEstudiante As IntegerDim edadEstudiante As Integer– Dim medidaLado, area As DoubleDim medidaLado, area As Double– Dim nombreEstudiante As StringDim nombreEstudiante As String– Dim ciudad, zipCode As StringDim ciudad, zipCode As String– Dim tieneBeca, esSoltero As BooleanDim tieneBeca, esSoltero As Boolean

Page 32: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Declaración de Declaración de constantes simbólicasconstantes simbólicas Para poder usar una constante simbólica Para poder usar una constante simbólica

hay que indicarle a la computadora cúal hay que indicarle a la computadora cúal es su nombre, su tipo de datos y su valor.es su nombre, su tipo de datos y su valor.

Formato:Formato:– Const Const nombreConstantenombreConstante As As tipoDatostipoDatos = = valorvalor

Ejemplos:Ejemplos:– Const PI As Double = 3.1416Const PI As Double = 3.1416– Const DIAS_POR_SEMANA As Integer = 7Const DIAS_POR_SEMANA As Integer = 7– Const SALUDO As String = Const SALUDO As String = ″″Hola JoséHola José″″

Page 33: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando text boxestext boxes para para inputinput La propiedad Text de un La propiedad Text de un text boxtext box contiene el contiene el

stringstring que se muestra dentro del que se muestra dentro del text boxtext box.. El siguiente enunciado de asignación permite El siguiente enunciado de asignación permite

recoger el valor entrado en un recoger el valor entrado en un text boxtext box y y asignárselo a una variable de tipo asignárselo a una variable de tipo stringstring (operación de (operación de InputInput):):– nombreVariablenombreVariable = = txtBoxtxtBox.Text.Text

Por ejemplo, para colocar en la variable Por ejemplo, para colocar en la variable palabraEntradapalabraEntrada el valor entrado por el el valor entrado por el usuario en el usuario en el textboxtextbox txtPalabratxtPalabra se se escribiría:escribiría:– palabraEntrada = txtPalabra.TextpalabraEntrada = txtPalabra.Text

Page 34: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando text boxestext boxes para para input input (cont.)(cont.) Si la variable es numérica, el valor del Si la variable es numérica, el valor del

textboxtextbox (un alfanumérico) debe (un alfanumérico) debe transformarse usando la función CInt para transformarse usando la función CInt para transformarlo a Entero (transformarlo a Entero (IntegerInteger) o CDbl ) o CDbl para transformarlo a Real (para transformarlo a Real (DoubleDouble).).– nombreVariablenombreVariable = CInt( = CInt(txtBoxtxtBox.Text).Text)– nombreVariablenombreVariable = CDbl( = CDbl(txtBoxtxtBox.Text).Text)

Por ejemplo, para colocar en la variable Por ejemplo, para colocar en la variable radioCirculoradioCirculo el valor entrado por el el valor entrado por el usuario en el usuario en el textboxtextbox txtRadiotxtRadio se se escribiría:escribiría:– radioCirculo = CDbl(txtRadio.Text)radioCirculo = CDbl(txtRadio.Text)

Page 35: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando text boxestext boxes para para outputoutput La propiedad Text también puede usarse La propiedad Text también puede usarse

para asignarle el valor de una variable de para asignarle el valor de una variable de tipo tipo stringstring a un a un textboxtextbox y mostrar el valor y mostrar el valor en la pantalla (operación de en la pantalla (operación de OutputOutput):):– txtBoxtxtBox.Text = .Text = nombreVariablenombreVariable

Por ejemplo, para mostrar el valor de la Por ejemplo, para mostrar el valor de la variable variable mensajemensaje en el en el textboxtextbox txtInstruccionestxtInstrucciones se escribiría: se escribiría:– mensaje = “Presione OK para continuar”mensaje = “Presione OK para continuar”– txtInstrucciones.Text = mensajetxtInstrucciones.Text = mensaje

Page 36: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando text boxestext boxes para para output output (cont.)(cont.) Si el valor que se desea mostrar en Si el valor que se desea mostrar en

el el textboxtextbox es numérico, hay que es numérico, hay que transformarlo en alfanumérico con transformarlo en alfanumérico con la función CStr:la función CStr:– txtBoxtxtBox.Text = CStr(.Text = CStr(nombreVariablenombreVariable))

Por ejemplo, para mostrar el valor Por ejemplo, para mostrar el valor de la variable de la variable areaCirculoareaCirculo en el en el textboxtextbox txtAreatxtArea se escribiría: se escribiría:– txtArea.Text = CStr(areaCirculo)txtArea.Text = CStr(areaCirculo)

Page 37: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando text boxestext boxes para para input input y y outputoutput

Page 38: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando text boxestext boxes para para input input y y outputoutput (cont.)(cont.)Private Sub btnCalcular_Click(...) _Private Sub btnCalcular_Click(...) _

Handles btnCalcular.ClickHandles btnCalcular.Click

Const PI As Double = 3.1416Const PI As Double = 3.1416

Dim radio, areaCirculo As DoubleDim radio, areaCirculo As Double

radio = CDbl(txtRadio.Text)radio = CDbl(txtRadio.Text) ′ ′ InputInput

areaCirculo = PI * radio ^ 2areaCirculo = PI * radio ^ 2 ′′ Process Process

txtArea.Text = CStr(areaCirculo)txtArea.Text = CStr(areaCirculo) ′′ Output Output

End SubEnd Sub

Page 39: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando list boxeslist boxes para para outputoutput de varias líneas de varias líneas Cuando se desean mostrar varias líneas Cuando se desean mostrar varias líneas

de resultados en la pantalla, tenemos de resultados en la pantalla, tenemos dos alternativas:dos alternativas:– Usar un Usar un text boxtext box por cada línea de por cada línea de

resultadoresultado– Usar un Usar un list boxlist box

Un Un list boxlist box permite mostrar una lista de permite mostrar una lista de valores. Cada valor aparecerá en su valores. Cada valor aparecerá en su propia línea. El prefijo para el nombre propia línea. El prefijo para el nombre de un de un list boxlist box es “lst”. es “lst”.

Los valores que muestra un Los valores que muestra un list boxlist box se se almacenan en la propiedad Items.almacenan en la propiedad Items.

Page 40: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando list boxeslist boxes para para outputoutput de varias líneas de varias líneas (cont.)(cont.) La instrucción para mostrar un valor La instrucción para mostrar un valor

en un en un list boxlist box es: es:– lstBoxlstBox.Items.Add(.Items.Add(valorvalor))

La instrucción para borrar el contenido La instrucción para borrar el contenido del del list boxlist box es: es:– lstBoxlstBox.Items.Clear().Items.Clear()

Add y Clear son métodos que afectan Add y Clear son métodos que afectan la propiedad Items del la propiedad Items del list boxlist box..

Un método es un proceso que lleva a Un método es un proceso que lleva a cabo una acción sobre un objeto.cabo una acción sobre un objeto.

Page 41: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando list boxeslist boxes para para outputoutput de varias líneas de varias líneas (cont.)(cont.)

Page 42: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando list boxeslist boxes para para outputoutput de varias líneas de varias líneas (cont.)(cont.)Private Sub btnCalcular_Click(...) Handles btnCalcular.ClickPrivate Sub btnCalcular_Click(...) Handles btnCalcular.Click Dim valor1, valor2 As DoubleDim valor1, valor2 As Double

valor1 = CDbl(txtPrimero.Text)valor1 = CDbl(txtPrimero.Text) valor2 = CDbl(txtSegundo.Text)valor2 = CDbl(txtSegundo.Text)

lstResultados.Items.Clear()lstResultados.Items.Clear() lstResultados.Items.Add("La suma es " & valor1 + valor2)lstResultados.Items.Add("La suma es " & valor1 + valor2) lstResultados.Items.Add("La resta es " & valor1 - valor2)lstResultados.Items.Add("La resta es " & valor1 - valor2) lstResultados.Items.Add("La multiplicación es " & _lstResultados.Items.Add("La multiplicación es " & _ valor1 * valor2)valor1 * valor2) lstResultados.Items.Add("La división es " & _lstResultados.Items.Add("La división es " & _ valor1 / valor2)valor1 / valor2)End SubEnd Sub

Page 43: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Usando Usando list boxeslist boxes para para outputoutput de varias líneas de varias líneas (cont.)(cont.)Private Sub btnBorrar_Click(..) Handles btnBorrar.ClickPrivate Sub btnBorrar_Click(..) Handles btnBorrar.Click

txtPrimero.Text = ""txtPrimero.Text = ""

txtSegundo.Text = ""txtSegundo.Text = ""

lstResultados.Items.Clear()lstResultados.Items.Clear()

txtPrimero.Focus()txtPrimero.Focus()

End SubEnd Sub

Page 44: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

FuncionesFunciones

Una función es una rutina que recibe uno Una función es una rutina que recibe uno o más valores (los o más valores (los argumentosargumentos) y ) y produce un solo resultado.produce un solo resultado.– Ejemplo: Math.Sqrt(9) = 3Ejemplo: Math.Sqrt(9) = 3 raíz cuadradaraíz cuadrada

Algunas de las funciones provistas por Algunas de las funciones provistas por Visual Basic .NET son:Visual Basic .NET son:– Las funciones matemáticasLas funciones matemáticas– Las funciones de conversiónLas funciones de conversión– Las funciones para controlar formato del Las funciones para controlar formato del

outputoutput– Las funciones para manejo de Las funciones para manejo de stringsstrings

Page 45: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones Funciones matemáticasmatemáticas Las funciones matemáticas comienzan Las funciones matemáticas comienzan

normalmente con “Math.” Algunas son:normalmente con “Math.” Algunas son:– Math.Abs(Math.Abs(xx) – valor absoluto de ) – valor absoluto de xx..– Math.Exp(Math.Exp(xx) – valor de ) – valor de ee ( ( 2.718) elevado 2.718) elevado

a la a la xx..– Math.Log(Math.Log(xx) – logaritmo natural de ) – logaritmo natural de xx..– Math.Round(Math.Round(xx, , nn) – valor de ) – valor de xx redondeado a redondeado a

nn lugares decimales lugares decimales– Math.Sqrt(Math.Sqrt(xx) – raíz cuadrada de ) – raíz cuadrada de xx. .

Page 46: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones Funciones matemáticas (cont.)matemáticas (cont.) Más funciones matemáticas:Más funciones matemáticas:

– Math.Sin(Math.Sin(xx) – el seno de ) – el seno de xx ( (xx está en está en radianes)radianes)

– Math.Cos(Math.Cos(xx) – el coseno de ) – el coseno de xx ( (xx está en está en radianes)radianes)

– Math.Tan(Math.Tan(xx) – la tangent de ) – la tangent de xx ( (xx está en está en radianes)radianes)

Nota: Recuerde que Nota: Recuerde que ( ( 3.1416) 3.1416) radianes = 180radianes = 180– Ej.: 75Ej.: 75 = 75 = 75 * ( * ( / 180 / 180) ) 1.309 1.309

Page 47: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones Funciones matemáticas (cont.)matemáticas (cont.) El siguiente programa calcula la distancia entre dos El siguiente programa calcula la distancia entre dos

puntos a 3 lugares decimales usando la fórmulapuntos a 3 lugares decimales usando la fórmuladist = dist = (x(x11 – x – x22))22 + (y + (y11 – – y2y2))22

Page 48: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones Funciones matemáticas (cont.)matemáticas (cont.)Private Sub btnCalcular_Click(...) _Private Sub btnCalcular_Click(...) _ Handles btnCalcular.ClickHandles btnCalcular.Click Dim x1, x2, y1, y2, dist As DoubleDim x1, x2, y1, y2, dist As Double

x1 = CDbl(txtX1.Text)x1 = CDbl(txtX1.Text) y1 = CDbl(txtY1.Text)y1 = CDbl(txtY1.Text) x2 = CDbl(txtX2.Text)x2 = CDbl(txtX2.Text) y2 = CDbl(txtY2.Text)y2 = CDbl(txtY2.Text)

dist = Math.Sqrt((x1 - x2) ^ 2 + _dist = Math.Sqrt((x1 - x2) ^ 2 + _ (y1 - y2) ^ 2)(y1 - y2) ^ 2)

txtDistancia.Text = Cstr(Math.Round(dist, 3))txtDistancia.Text = Cstr(Math.Round(dist, 3))End SubEnd Sub

Page 49: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de Funciones de conversiónconversión Las siguientes funciones permiten Las siguientes funciones permiten

convertir valores de un tipo de datos a convertir valores de un tipo de datos a otro:otro:– CInt(CInt(strstr) – convierte el alfanumérico ) – convierte el alfanumérico strstr a a

número entero (Integer)número entero (Integer)– CDbl(CDbl(strstr) – convierte el alfanumérico ) – convierte el alfanumérico strstr a a

número real (Double)número real (Double)– CStr(CStr(nn) – convierte el número ) – convierte el número nn a a

alfanumérico (String)alfanumérico (String) Estas funciones se usan mucho para Estas funciones se usan mucho para

operaciones de operaciones de inputinput y y outputoutput en en text text boxesboxes..

Page 50: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de formatoFunciones de formato

Las funciones de formato son usadas Las funciones de formato son usadas para mostrar números con el formato para mostrar números con el formato especificado.especificado.

Algunas de las funciones de formato Algunas de las funciones de formato son:son:– FormatNumber – para mostrar númerosFormatNumber – para mostrar números– FormatCurrency – para mostrar dineroFormatCurrency – para mostrar dinero– FormatPercent – para mostrar porcientosFormatPercent – para mostrar porcientos

El resultado de una función de formato El resultado de una función de formato es un es un stringstring..

Page 51: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de formato Funciones de formato (cont.)(cont.) Ejemplos de uso:Ejemplos de uso:

– FormatNumber(12345.628, 1) = FormatNumber(12345.628, 1) = “12,345.6”“12,345.6”

– FormatCurrency(12345.628)FormatCurrency(12345.628) = = “$12,345.63”“$12,345.63”

– FormatPercent(0.185, 2) = “18.50%”FormatPercent(0.185, 2) = “18.50%” Otro ejemplo:Otro ejemplo:

– Dim num As Double = 12345.628Dim num As Double = 12345.628– txtNumber.Text = FormatNumber(num, 1)txtNumber.Text = FormatNumber(num, 1)

Page 52: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de formato Funciones de formato (cont.)(cont.)

Page 53: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de formato Funciones de formato (cont.)(cont.)Private Sub btnCalcular_Click(...) _Private Sub btnCalcular_Click(...) _ Handles btnCalcular.ClickHandles btnCalcular.Click Dim cantidad As IntegerDim cantidad As Integer Dim precio, porciento As DoubleDim precio, porciento As Double Dim ventas, comision As DoubleDim ventas, comision As Double

cantidad = CInt(txtCantidad.Text)cantidad = CInt(txtCantidad.Text) precio = CDbl(txtPrecio.Text)precio = CDbl(txtPrecio.Text) porciento = CDbl(txtPorciento.Text)porciento = CDbl(txtPorciento.Text)

ventas = cantidad * precioventas = cantidad * precio comision = porciento * ventascomision = porciento * ventas

Continúa …

Page 54: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de formato Funciones de formato (cont.)(cont.)

lstResultados.Items.Clear()lstResultados.Items.Clear() lstResultados.Items.Add("La cantidad vendida: " & _lstResultados.Items.Add("La cantidad vendida: " & _ FormatNumber(cantidad, 0))FormatNumber(cantidad, 0)) lstResultados.Items.Add("El precio: " & _lstResultados.Items.Add("El precio: " & _ FormatCurrency(precio))FormatCurrency(precio)) lstResultados.Items.Add("El porciento de comisión: " & _lstResultados.Items.Add("El porciento de comisión: " & _ FormatPercent(porciento, 1))FormatPercent(porciento, 1)) lstResultados.Items.Add("")lstResultados.Items.Add("") lstResultados.Items.Add("Las ventas totales: " & _lstResultados.Items.Add("Las ventas totales: " & _ FormatCurrency(ventas))FormatCurrency(ventas)) lstResultados.Items.Add("La comisión: " & _lstResultados.Items.Add("La comisión: " & _ FormatCurrency(comision))FormatCurrency(comision))End SubEnd Sub

Page 55: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de stringsFunciones de strings

Las siguientes funciones manejan Las siguientes funciones manejan stringsstrings::– StrStr.Length – cantidad de caracteres.Length – cantidad de caracteres– StrStr.ToUpper – equivalente en mayúscula.ToUpper – equivalente en mayúscula– StrStr.ToLower – equivalente en minúscula.ToLower – equivalente en minúscula– StrStr.IndexOf(.IndexOf(Str2Str2) – posición de la primera ) – posición de la primera

ocurrencia de ocurrencia de Str2Str2 dentro de dentro de StrStr. Devuelve –. Devuelve –1 si 1 si Str2Str2 no está. no está.

– StrStr.Substr(.Substr(mm, , nn) – ) – substringsubstring de de StrStr que que comienza en la posición comienza en la posición mm y tiene y tiene n n caracteres.caracteres.

Nota: Las posiciones comienzan en 0.Nota: Las posiciones comienzan en 0.

Page 56: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de strings Funciones de strings (cont.)(cont.)

Page 57: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de strings Funciones de strings (cont.)(cont.)Private Sub btnEvaluar_Click(...) Handles Private Sub btnEvaluar_Click(...) Handles

btnEvaluar.ClickbtnEvaluar.Click Dim frase As StringDim frase As String

frase = txtString.Textfrase = txtString.Text lstResultados.Items.Clear()lstResultados.Items.Clear() lstResultados.Items.Add("Frase: " & frase)lstResultados.Items.Add("Frase: " & frase) lstResultados.Items.Add("Length: " & lstResultados.Items.Add("Length: " &

frase.Length)frase.Length) lstResultados.Items.Add("ToUpper: " & lstResultados.Items.Add("ToUpper: " &

frase.ToUpper)frase.ToUpper) lstResultados.Items.Add("ToLower: " & lstResultados.Items.Add("ToLower: " &

frase.ToLower)frase.ToLower)Continúa …

Page 58: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Funciones de strings Funciones de strings (cont.)(cont.) lstResultados.Items.Add("IndexOf: " & _lstResultados.Items.Add("IndexOf: " & _

frase.IndexOf("sa"))frase.IndexOf("sa"))

lstResultados.Items.Add("Substring: " & _lstResultados.Items.Add("Substring: " & _

frase.Substring(8, 4))frase.Substring(8, 4))

lstResultados.Items.Add("Otro Substring: " & _lstResultados.Items.Add("Otro Substring: " & _

frase.Substring(8))frase.Substring(8))

lstResultados.Items.Add("Frase: " & frase)lstResultados.Items.Add("Frase: " & frase)

End SubEnd Sub

Page 59: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Comentarios para Comentarios para describir los describir los programasprogramas Los comentarios son anotaciones que Los comentarios son anotaciones que

hace el programador.hace el programador. Todo programa debe tener, por lo Todo programa debe tener, por lo

menos, comentarios que indiquen el menos, comentarios que indiquen el nombre del programa, el autor, la nombre del programa, el autor, la fecha de creación y el propósito o fecha de creación y el propósito o descripción.descripción.

''Programa: CalcularAreaPrograma: CalcularArea''Autor: Antonio HuertasAutor: Antonio Huertas''Fecha: 2 de febrero de 2006Fecha: 2 de febrero de 2006''Propósito: Calcular el área de un círculo dadoPropósito: Calcular el área de un círculo dado'' el radio. el radio.

Page 60: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Tipos de errores en Tipos de errores en programaciónprogramación En programación hay tres tipos de En programación hay tres tipos de

errores:errores:– Error de sintaxis – error causada porque no Error de sintaxis – error causada porque no

se escribe el programa siguiendo las reglas se escribe el programa siguiendo las reglas del lenguaje. Detectado por el compilador.del lenguaje. Detectado por el compilador.

– Error de lógica – error causado cuando el Error de lógica – error causado cuando el programa no hace los que se pretendía.programa no hace los que se pretendía.

– Error de tiempo de ejecución – error Error de tiempo de ejecución – error causado por la inhabilidad de la causado por la inhabilidad de la computadora de llevar a cabo una tarea.computadora de llevar a cabo una tarea.

Page 61: Programación Aplicada de Computadoras Lección #3 – Manejo de la Memoria e Input/Output Prof. Antonio F. Huertas

Propiedades Propiedades adicionalesadicionales Algunas propiedades adicionales de los Algunas propiedades adicionales de los

controles vistos que son útiles:controles vistos que son útiles:– Font – tipo de letraFont – tipo de letra– BackColor y ForeColor – color del fondo y BackColor y ForeColor – color del fondo y

del textodel texto– TabIndex – Indica el orden en que obtienen TabIndex – Indica el orden en que obtienen

el foco los controles cuando se presiona Tabel foco los controles cuando se presiona Tab– TabStop – True si el usuario puede usar Tab TabStop – True si el usuario puede usar Tab

para darle el foco al controlpara darle el foco al control– TextAlign – alineamiento del textoTextAlign – alineamiento del texto– Visible – True si el control está visibleVisible – True si el control está visible– Enabled – True si el control está habilitadoEnabled – True si el control está habilitado