Sentencias
Sentencias
o instrucciones en
o instrucciones en
Visual BASIC
Visual BASIC
REM
REM
REM es una sentencia no ejecutable y permite introducir REM es una sentencia no ejecutable y permite introducir
comentarios en los programas. A esta pr
comentarios en los programas. A esta práctica se la áctica se la denomina documentaci
denomina documentacióón.n. FORMATO:
FORMATO: REM texto del comentarioREM texto del comentario o tambi
o tambiéén:n: ‘‘ Texto del comentarioTexto del comentario Reglas de funcionamiento:
Reglas de funcionamiento:
Se puede situar en cualquier parte del programaSe puede situar en cualquier parte del programa
Se pueden poner tantas lSe pueden poner tantas lííneas REM con observaciones neas REM con observaciones
c
cómo y donde queramosómo y donde queramos Ejemplo:
Ejemplo:
REM Esto es un programa de prueba REM Esto es un programa de prueba
DIM
DIM
FORMATO: FORMATO:
Dim Y, Z, suma, resta, producto As Integer
Dim Y, Z, suma, resta, producto As Integer
Dim division As Double
Dim division As Double
Dim Apellidos As String
Dim Apellidos As String
Reglas de funcionamiento: Reglas de funcionamiento:
Se debe situar en al comienzo del cSe debe situar en al comienzo del cóódigo del programa digo del programa
Ejemplo:
Ejemplo: DimDim A,BA,B as as IntegerInteger A=4
A=4 B=2 B=2 ……
La sentencia DIM permite crear variables en
La sentencia DIM permite crear variables en
memoria RAM para ser utilizadas por el programa.
memoria RAM para ser utilizadas por el programa.
Permite definir el tipo de variable (de texto,
Permite definir el tipo de variable (de texto,
num
Visualiza datos en el Formulario. Puede mostrar texto Visualiza datos en el Formulario. Puede mostrar texto
fijo o variables. fijo o variables.
FORMATO:
FORMATO: PRINT [lista de expresiones] [,][;]PRINT [lista de expresiones] [,][;] Reglas de funcionamiento:
Reglas de funcionamiento:
Una coma (separa un tabulador) o punto y coma (enlaza los mensajes) Una coma (separa un tabulador) o punto y coma (enlaza los mensajes)
deben separar cada expresi deben separar cada expresiónón
Una sentencia PRINT sola imprime por pantalla una líUna sentencia PRINT sola imprime por pantalla una línea en blanconea en blanco
Las expresiones deben ir entre comillas. Las variables no. Las expresiones deben ir entre comillas. Las variables no.
Ejemplos: Ejemplos: PRINT
PRINT ““BASIC es un lenguaje de programaciBASIC es un lenguaje de programacióónn”” PRINT valor
PRINT valor PRINT
PRINT ““holahola””, “, “adiosadios”” PRINT 3 + 5
Ejemplo
Variables y Constantes
Constante
Constante
: es un valor que no cambia. Una
: es un valor que no cambia. Una
constante conserva el mismo valor cada vez que
constante conserva el mismo valor cada vez que
se hace un c
se hace un c
á
á
lculo o se ejecuta un programa.
lculo o se ejecuta un programa.
Ejemplo:
Ejemplo:
Pi
Pi
(3.1416).
(3.1416).
a)
a)
Constante num
Constante num
é
é
rica
rica
: es un n
: es un n
úmero que
ú
mero que
contiene un m
contiene un m
á
á
ximo de 8 caracteres
ximo de 8 caracteres
b)
b)
Constante alfanum
Constante alfanum
é
é
rica
rica
: es una cadena
: es una cadena
de caracteres que se colocan entre
de caracteres que se colocan entre
comilllas
comilllas
.
.
Ejemplo
Ejemplo
:
:
Pi
Pi
= 3.1416
= 3.1416
Variable
Variable
:
:
Un valor que cambia. (generalmente
Un valor que cambia. (generalmente
para identificarlas se hace con una letra)
para identificarlas se hace con una letra)
a)
a)
Variables num
Variables num
é
é
ricas
ricas
:
:
(s
(s
ó
ó
lo pueden
lo pueden
contener cifras) y se identifican por letras o
contener cifras) y se identifican por letras o
palabras (A, B, C, numero,..).
palabras (A, B, C, numero,..).
En Visual Basic se usa
En Visual Basic se usa
Dim
Dim
A as
A as
integer
integer
b)
b)
Variables alfanum
Variables alfanum
é
é
ricas
ricas
:
:
(pueden
(pueden
contener cifras y letras). Se identifican por
contener cifras y letras). Se identifican por
letras o palabras seguidas del s
letras o palabras seguidas del s
í
í
mbolo d
mbolo d
ó
ó
lar
lar
(A$, B$,
(A$, B$,
expr
expr
$,
$,
...).
...).
En Visual Basic se usa
En Visual Basic se usa
Dim
Dim
Nombre as
Nombre as
String
String
O tambi
Nivel de Formulario Nivel de Formulario::
Si se declara una variable a nivel de forma esta
Si se declara una variable a nivel de forma esta
disponible en cada procedimiento en esta forma.
disponible en cada procedimiento en esta forma.
Nivel de Modulo
Nivel de Modulo:: Se crean mediante la Se crean mediante la selecci
seleccióón de la opcin de la opcióón Agregar Modulo del menn Agregar Modulo del menúú Proyecto de VB. Los m
Proyecto de VB. Los móódulos de cdulos de cóódigos se digos se utilizan para conservar los
utilizan para conservar los subprocedimientossubprocedimientos y y funciones generales que no est
funciones generales que no estáán relacionados n relacionados con eventos, as
con eventos, asíí como sus variables como sus variables locales(publicas
locales(publicas) y sus constantes. ) y sus constantes.
Variables Publicas:
Variables Publicas: para identificar una variable para identificar una variable global, se declara con la palabra
global, se declara con la palabra PublicPublic. .
Ej
InputBox
InputBox
( )
( )
FORMATO: FORMATO:
valor =
valor = InputBox(MensajeInputBox(Mensaje, titulo, , titulo, PosxPosx, , PosyPosy, , ArchAyudaArchAyuda, , ContextContext)) Reglas de funcionamiento:
Reglas de funcionamiento:
La variable de la izquierda recibe el valor escrito La variable de la izquierda recibe el valor escrito
Ejemplo:
Ejemplo: Nombre=Nombre=Inputbox(Inputbox(““DimeDime tu nombretu nombre””))
InputBox
InputBox
()
()
Despliega un Mensaje en un cuadro
Despliega un Mensaje en un cuadro
de dialogo, espera que el usuario introduzca el
de dialogo, espera que el usuario introduzca el
texto o seleccione un bot
texto o seleccione un bot
ó
ó
n y luego devuelve
n y luego devuelve
el contenido del cuadro de texto.
el contenido del cuadro de texto.
Inputbox() devuelve un valor que se asigna a una variable. Msgbox() muestra una ventana de diálogo.
MsgBox
MsgBox
FORMATO: FORMATO:
valor =
valor = MsgBox(MensajeMsgBox(Mensaje, tipo, titulo, ArchAyuda, tipo, titulo, ArchAyuda, , ContextContext))
MsgBox
MsgBox
()
()
Despliega un mensaje en un
Despliega un mensaje en un
cuadro de dialogo y espera que el
cuadro de dialogo y espera que el
usuario seleccione un bot
usuario seleccione un bot
ó
ó
n.
n.
Inputbox() devuelve un valor que se asigna a una variable. Msgbox() muestra una ventana de diálogo.
Reglas de funcionamiento: Reglas de funcionamiento:
La variable de la izquierda recibe el valor escrito La variable de la izquierda recibe el valor escrito
Ejemplo:
Ejemplo
Ejemplo
InputBox
InputBox
y
y
MsgBox
MsgBox
Private
Private SubSub Command2_Command2_ClickClick()() Dim
Dim litros, litros, kmkm As As IntegerInteger Dim
Dim consumo As consumo As DoubleDouble Print
Print "CONSUMO DE GASOLINA""CONSUMO DE GASOLINA" litros =
litros = InputBoxInputBox("POR FAVOR, INTRODUZCA LOS LITROS")("POR FAVOR, INTRODUZCA LOS LITROS") km
km = = InputBoxInputBox("INTRODUZCA LOS KILOMETROS")("INTRODUZCA LOS KILOMETROS") consumo = litros /
consumo = litros / kmkm * 100* 100 MsgBox
MsgBox ("El consumo es de: " & consumo & " /("El consumo es de: " & consumo & " /KmKm")") End
Ejemplo
Ejemplo
variables alfanum
variables alfanum
é
é
ricas
ricas
Private
Private SubSub Command1_Command1_ClickClick()() Dim
Dim Nombre, calle As Nombre, calle As StringString Nombre =
Nombre = InputBoxInputBox("Dime como te llamas:")("Dime como te llamas:") calle =
calle = InputBoxInputBox("Dime tu calle:")("Dime tu calle:") MsgBox
MsgBox (Nombre & "vive en la calle " & calle)(Nombre & "vive en la calle " & calle) End
Ejemplo 1: Ejemplo 1:
Private Sub Command1_Click()
Private Sub Command1_Click()
Dim N As Integer Dim N As Integer For N = 1 To 6 For N = 1 To 6 Print Print RndRnd Next N Next N End Sub End Sub
RND,CINT
RND,CINT
( ),ROUND( )
( ),ROUND( )
La función RND devuelve un valor aleatorio entre 0 y 1. La función ROUND() redondea el número decimal contenido en el paréntesis.
Ejemplo 2: Ejemplo 2:
Private Sub Command1_Click()
Private Sub Command1_Click()
Dim N As Integer Dim N As Integer
For N = 1 To 6 For N = 1 To 6
Print Round(RndRound(Rnd * 46)* 46) Next N
Next N End Sub End Sub
CHR( )
CHR( )
Es una función de Visual Basic que muestra el carácter Ascii correspondiente al número entre paréntesis.
FORMATO: PRINT CHR(65) (muestra la letra
FORMATO: PRINT CHR(65) (muestra la letra ‘‘AA’’ )) Ejemplos:
KEYPRESS
KEYPRESS
Asigna un valor a una tecla pulsada en el formulario. Esto es, detecta que tecla se ha pulsado y guarda su código ascii en la variable KEYASCII
FORMATO:
FORMATO: Form_KeyPress(KeyAsciiForm_KeyPress(KeyAscii As As IntegerInteger))
Ejemplos: Ejemplos:
Private Sub
Private Sub Form_KeyPress(KeyAsciiForm_KeyPress(KeyAscii As Integer)As Integer) Dim
Dim TeclaTecla As StringAs String Tecla
Tecla = = KeyAsciiKeyAscii Label1 =
Label1 = TeclaTecla
Print "LA TECLA PULSADA ES:";
Print "LA TECLA PULSADA ES:"; Chr(TeclaChr(Tecla)) End Sub
Es un control de Visual Basic utilizado para introducir Es un control de Visual Basic utilizado para introducir
mensajes en un programa. Es una etiqueta de texto en la que se
mensajes en un programa. Es una etiqueta de texto en la que se
puede escribir cualquier informaci
puede escribir cualquier informacióón.n. Ejemplo:
Ejemplo:
LABEL
LABEL
Es un control de Visual Basic utilizado para introducir Es un control de Visual Basic utilizado para introducir
informaci
informacióón en un programa. Es una caja de texto aunque n en un programa. Es una caja de texto aunque tambien
tambien pueden introducirse valores numpueden introducirse valores numééricos (pasricos (pasáándolos a la ndolos a la variable correspondiente). variable correspondiente). Ejemplo: Ejemplo:
TEXTBOX
TEXTBOX
COMMANDBUTTON
COMMANDBUTTON
Es un control de Visual Basic que permite ejecutar Es un control de Visual Basic que permite ejecutar
c
cóódigo al pulsarlo.digo al pulsarlo. FORMATO:
FORMATO: Command1_Command1_ClickClick()() Ejemplo:
LISTBOX
LISTBOX
Es un control de Visual Basic que permite ALMACENAR Es un control de Visual Basic que permite ALMACENAR
una lista de elementos y desplazarse dentro de ella. una lista de elementos y desplazarse dentro de ella.
FORMATO:
FORMATO:
List1.
List1.
AddItem
AddItem
(elemento)
(elemento)
Ejemplo: Ejemplo:
Private Sub Command1_Click()
Private Sub Command1_Click()
List1.Clear
List1.Clear
For X = 1 To 255
For X = 1 To 255
List1.AddItem (
List1.AddItem (Str(XStr(X) & ") & "--" & " & Chr$(XChr$(X)))) Next X
Next X
End Sub
IMAGE
IMAGE
Es un control de Visual Basic utilizado para introducir Es un control de Visual Basic utilizado para introducir
im
TIMER
TIMER
El control
El control TimerTimer se utiliza para se utiliza para realizar una realizar una acci accióón de n de forma forma repetitiva cada repetitiva cada x milisegundos. x milisegundos.
Operadores de comparaci
Operadores de comparaci
ó
ó
n
n
Distinto de Distinto de Distinto de Distinto de <> <> Precede o es Precede o es igual igual Menor o igual Menor o igual que que <= <= Sigue o es Sigue o es igual igual Mayor o igual Mayor o igual que que >= >= Precede Precede Menor que Menor que < < Sigue Sigue Mayor que Mayor que > > Igual a Igual a Igual a Igual a = = FUNCI FUNCIÓÓN N ALFANUMERICA ALFANUMERICA FUNCI FUNCIÓÓN N L LÓÓGICAGICA OPERADORES OPERADORESOperadores l
Operadores l
ó
ó
gicos
gicos
NO NO NOT NOT O O OR OR Y Y AND AND FUNCI FUNCIÓÓN N OPERADOR OPERADOR
PARENTESIS
PARENTESIS
Los par
Los parééntesis se utilizan para anidar expresiones.ntesis se utilizan para anidar expresiones. ( ) Anidar expresiones
( ) Anidar expresiones
ORDEN DE EVALUACION: (),^,* /,+
ORDEN DE EVALUACION: (),^,* /,+ --, &, AND OR, &, AND OR
La prioridad a la hora de evaluar los operadores en
La prioridad a la hora de evaluar los operadores en
cualquier expresi
cualquier expresióón es:n es:
–
– ParParééntesis (empezando por los mntesis (empezando por los máás internos)s internos)
–
– PotenciasPotencias
–
– Productos y divisionesProductos y divisiones
–
– Sumas y restasSumas y restas
– – ConcatenaciConcatenacióónn – – RelacionalesRelacionales – – LLóógicosgicos Ejemplo: Ejemplo: Print Print 2*(1/2)+2^32*(1/2)+2^3 En esta expresi En esta expresióón el n el resultado ser resultado será..á.. -- 9 9 -
-IF THEN ELSE
IF THEN ELSE
Permite introducir condiciones para ejecutar una Permite introducir condiciones para ejecutar una
instrucci
instruccióón o instrucciones. Puede tener varios n o instrucciones. Puede tener varios formatos
formatos FORMATO:
FORMATO: IF expresiIF expresión lón lóógica THEN gica THEN sentencia(s) [:]sentencia(s) [:] FORMATO:
FORMATO: IF expresi
IF expresióón ln lóógica THEN gica THEN sentencia(ssentencia(s) ELSE ) ELSE sentencia(Ssentencia(S)) FORMATO:
FORMATO: IF expresi
IF expresióón ln lóógica THEN gica THEN sentencia(s sentencia(s) ) ELSE ELSE Sentencia(s Sentencia(s)) END IF END IF
Reglas de funcionamiento: Reglas de funcionamiento:
La expresiLa expresióón ln lóógica puede ser una expresigica puede ser una expresióón en la que se n en la que se incluyan operadores l
incluyan operadores lóógicos o de comparacigicos o de comparacióónn
Las sentencias de la clLas sentencias de la clááusula THEN susula THEN sóólo se ejecutan si la lo se ejecutan si la
expresi
expresión lón lóógica es verdadera.gica es verdadera.
Si la condicióSi la condición es falsa, se ejecutan las instrucciones de la n es falsa, se ejecutan las instrucciones de la
de la cl
de la clááusula ELSE, si existe, o se sigue la siguiente usula ELSE, si existe, o se sigue la siguiente instrucci
instruccióón del programa.n del programa. Ejemplos:
Ejemplos:
IF A>B THEN PRINT A ;
IF A>B THEN PRINT A ; ““ES MAYOR QUE ES MAYOR QUE ““ ; B; B IF A$=
IF A$=““SS”” THEN THEN PRINT
PRINT ““CORRECTOCORRECTO”” ELSE
ELSE
PRINT ““FALSOFALSO”” END IF
END IF
IF THEN ELSE
IF THEN ELSE
Bucle MIENTRAS
Bucle MIENTRAS
MIENTRAS
MIENTRAS
condicion
condicion
HACER
HACER
I1 ; ... ; In
I1 ; ... ; In
FINMIENTRAS
FINMIENTRAS
–
–
Bucle REPETIR
Bucle REPETIR
REPETIR
REPETIR
I1 ; ... ; In
I1 ; ... ; In
HASTA
FOR
FOR
…
…
NEXT
NEXT
Permite repetir un conjunto de instrucciones un n
Permite repetir un conjunto de instrucciones un núúmero fijo mero fijo de veces. Se denomina
de veces. Se denomina bucle controlado por contadorbucle controlado por contador, , debido a que se necesita una variable num
debido a que se necesita una variable numéérica que actrica que actúúa a como contador y que se incrementa o disminuye en un valor como contador y que se incrementa o disminuye en un valor
constante a partir de un valor inicial, despu
constante a partir de un valor inicial, despuéés de cada s de cada iteraci
iteracióón del buclen del bucle FORMATO: FORMATO:
FOR v=
FOR v=vvii TO vTO vff [STEP x][STEP x] sentencia(s sentencia(s)) NEXT v NEXT v
Ejemplos:
Ejemplos:
Reglas de funcionamiento: Reglas de funcionamiento:
Una sentencia Una sentencia FORFOR debe existir siempre con una sentencia debe existir siempre con una sentencia
NEXT
NEXT y viceversa.y viceversa.
La variable v controladora del bucle actLa variable v controladora del bucle actúúa de contador.a de contador.
vvii es el valor inicial de la variable v, es el valor inicial de la variable v, vvff es el valor final y X es el valor final y X
es el incremento/decremento del contador; cuando se es el incremento/decremento del contador; cuando se omite la sentencia
omite la sentencia STEPSTEP, el valor por defecto es el , el valor por defecto es el incremento en 1.
incremento en 1.
La sentencia NEXT marca el final del bucle y punto en el La sentencia NEXT marca el final del bucle y punto en el
que la variable contador se incrementa/
que la variable contador se incrementa/decrementadecrementa..
Resoluci
Resoluci
ó
ó
n de
n de
problemas con el
problemas con el
ordenador
ordenador
Pasos comunes en la creaci
Pasos comunes en la creaci
ó
ó
n de un programa
n de un programa
entendido como un proceso de resoluci
entendido como un proceso de resoluci
ó
ó
n de
n de
problemas:
problemas:
1.
1. AnAnálisis del problemaálisis del problema: definici: definicióón del problema. n del problema. 2.
2. DiseDiseñño del algoritmoo del algoritmo: proceso que convierte los : proceso que convierte los resultados del an
resultados del anáálisis del problema en un diselisis del problema en un diseñño o
modular con refinamientos sucesivos que permita una modular con refinamientos sucesivos que permita una
posterior traducci
posterior traduccióón a un lenguajen a un lenguaje Las herramientas m
Las herramientas máás utilizadas para dises utilizadas para diseñar algoritmos ñar algoritmos son:
son: a.
a. Diagramas de flujoDiagramas de flujo: representaci: representacióón grán gráfica del fica del algoritmo
algoritmo b.
b. PseudocPseudocóódigodigo: las instrucciones se escriben en : las instrucciones se escriben en palabra que facilita tanto la escritura como la palabra que facilita tanto la escritura como la
lectura de programas lectura de programas
3.
3.
Codificaci
Codificaci
ó
ó
n de un programa
n de un programa
: traducci
: traducci
ó
ó
n
n
del algoritmo en un lenguaje de
del algoritmo en un lenguaje de
programaci
programaci
ó
ó
n
n
4.
4.
Compilaci
Compilaci
ó
ó
n y ejecuci
n y ejecuci
ó
ó
n
n
: traducirlo al
: traducirlo al
lenguaje m
lenguaje m
á
á
quina. Este proceso se realiza
quina. Este proceso se realiza
mediante el compilador y el sistema
mediante el compilador y el sistema
operativo
operativo
5.
5.
Verificaci
Verificaci
ó
ó
n y depuraci
n y depuraci
ó
ó
n
n
: ejecutar el
: ejecutar el
programa con una amplia variedad de datos
programa con una amplia variedad de datos
de prueba para determinar si el programa
de prueba para determinar si el programa
tiene errores. La depuraci
tiene errores. La depuraci
ó
ó
n es el proceso
n es el proceso
de encontrar los errores del programa y
de encontrar los errores del programa y
corregirlos
corregirlos
a. Errores de sintaxis
a. Errores de sintaxis: uso incorrecto de las reglas del : uso incorrecto de las reglas del lenguaje de programaci
lenguaje de programacióónn b. Errores de ejecuci
b. Errores de ejecucióónn: se producen por instrucciones : se producen por instrucciones que el ordenador puede comprender pero no ejecutar que el ordenador puede comprender pero no ejecutar (por ejemplo, dividir por cero)
(por ejemplo, dividir por cero) c. Errores l
c. Errores lógicosógicos: se producen en la l: se producen en la lóógica del programa. gica del programa. La fuente de error suele ser el dise
La fuente de error suele ser el diseñño del algoritmoo del algoritmo 6.
6. DocumentaciDocumentacióón y mantenimienton y mantenimiento: descripciones de los : descripciones de los pasos a dar en el proceso de resoluci
pasos a dar en el proceso de resolucióón un problema n un problema Puede ser interna o externa. La documentaci
Puede ser interna o externa. La documentacióón interna es la n interna es la contenida en la l
contenida en la líínea de comandos (por ejemplo, lnea de comandos (por ejemplo, lííneas neas rem
rem). La documentació). La documentación externa incluye el ann externa incluye el anáálisis, los lisis, los diagramas de flujo y/o
diagramas de flujo y/o pseudocpseudocóódigosdigos, manuales de , manuales de usuario con instrucciones para ejecutar el programa y usuario con instrucciones para ejecutar el programa y
analizar los resultados analizar los resultados…… La documentaci
La documentacióón es muy importante cuando se desea n es muy importante cuando se desea
corregir posibles errores futuros o cambiar el programa. corregir posibles errores futuros o cambiar el programa. Tales cambios se denominan mantenimiento del programa Tales cambios se denominan mantenimiento del programa
Pseudoc
Pseudoc
ó
ó
digo
digo
--
Hacer un programa que pida un
Hacer un programa que pida un
n
n
ú
ú
mero y diga si es par o impar.
mero y diga si es par o impar.
PROGRAMA Par
PROGRAMA Par
-
-
Impar
Impar
INICIO
INICIO
ENTORNO:
ENTORNO:
HACER
HACER
PEDIR NPEDIR NÚÚMERO N MERO N {entrada de datos}{entrada de datos} COMPROBAR SI N ES PAR O IMPAR
COMPROBAR SI N ES PAR O IMPAR
MOSTRAR MENSAJE SI ES PAR
MOSTRAR MENSAJE SI ES PAR
MOSTRAR MENSAJE SI ES IMPAR
MOSTRAR MENSAJE SI ES IMPAR
FINPROGRAMA
FINPROGRAMA
Diagramas de flujo
Diagramas de flujo
PROGRAMA PAR
PROGRAMA PAR
-
-
IMPAR
IMPAR
Es N/2=N\2? SI NO Mostrar ES IMPAR Pedir N Mostrar ES PAR PAR-IMPAR CREAR N
PROGRAMA PAR
Pseudoc
Pseudoc
ó
ó
digo
digo
--
Hacer un programa que SIMULE
Hacer un programa que SIMULE
el lanzamiento de un dado.
el lanzamiento de un dado.
PROGRAMA DADO
PROGRAMA DADO
INICIO
INICIO
HACER
HACER
Crear variable ENTERA
Crear variable ENTERA
GUARDAR VALOR AL AZAR EN VARIABLE
GUARDAR VALOR AL AZAR EN VARIABLE
MOSTRAR CONTENIDO DE LA VARIABLE
MOSTRAR CONTENIDO DE LA VARIABLE
FINPROGRAMA
Diagramas de flujo Diagramas de flujo