lunes, 17 de octubre de 2011

SENTENCIAS DE VISUAL BASIC



SENTENCIA DIM
Es la forma más común de declarar una variable como Privada. Puede emplearse en un Procedimiento, Función, Formulario o Módulo. La sintaxis es de la siguiente forma:
Dim nombrevariable As Integer (o el tipo que sea)

Declarando una variable con la sentencia DIM, en un formulario, Función, procedimiento o módulo, el entorno de la variable será el explicado anteriormente para una variable declarada como Privada. Es decir, esa variable no sale del formulario, procedimiento ó módulo donde se declaró. Cada vez que entremos al formulario, procedimiento o módulo, esa variable tomará el valor cero (si es numérica) o nulo (si es string).
Resumimos la forma de declarar una variable :
En un Procedimiento (La variable no puede usarse fuera de esta Procedimiento)
Dim Variable As Tipovariable
En un Formulario (En su sección de declaraciones)
SENTENCIAS CONDICIONALES.
Llamamos sentencias condicionales a aquellas que se realizan si se cumple una determinada condición. Son las sentencias por las que empieza cualquier texto de Basic, y este no va ser menos.
La sentencia condicional más usada es:

Si se cumple una condición Entonces
Realiza estas instrucciones
Si no se cumple
Realiza estas otras instrucciones
Fin de la sentencia.

Así de fácil es programar en Basic. Lo que ocurre es que esta herramienta habla inglés, y lo descrito anteriormente toma la forma:

If condición Then
Instrucciones
Else
Otras instrucciones
End If
Sentencia SELECT CASE

Esta sentencia permite ejecutar una de entre varias acciones en función del valor de una expresión. Es una alternativa a If ... Then ... ElseIf cuando se compara la misma expresión con diferentes valores. Su forma general es la siguiente:

Select Case expresion
Case etiq1
[sentencias1]
Case etiq2
[sentencias2]
Case Else
sentenciasn
End Select

donde expresion es una expresión numérica o alfanumérica, y etiq1, etiq2, ... pueden adoptar las formas siguientes:
1. expresion
2. expresion To expresion
3. Is operador-de-relación expresion
4. combinación de las anteriores separadas por comas
Por ejemplo,

Numero = 8 ’ Se inicializan las variable.
Select Case Numero ’ Se va a evaluar la variable Numero.
Case 1 To 5 ' Numero está entre 1 y 5.
Resultado = "Se encuentra entre 1 y 5"
' Lo siguiente se ejecuta si es True la expresión.
Case 6, 7, 8 ' Numero es uno de los tres valores.
Resultado = "Se encuentra entre 6 y 8"
Case Is = 9 , Is = 10 ' Numero es 9 ó 10.
Resultado = "El valor es 9 o 10"
Case Else ' Resto de valores.
Resultado = "El número no se encuentra entre 1 y 10"
End Select

Cuando se utiliza la forma expresion To expresion, el valor más pequeño debe aparecer en primer lugar.

BUCLE POR CONTADOR
Realiza el bucle tantas veces como le indiquemos. Por ejemplo, en este bucle nos va a presentar las 26 letras mayúsculas del alfabeto inglés.
For N=65 To 90
Label1.caption = Chr ( N )
Next N
Este "programa" nos presentará en una caja (Label) los caracteres cuyo número ASCII vaya desde el 65 (A) al 90 (Z) Comenzará presentando el correspondiente al número 65, e irá presentando sucesivamente el 66, el 67, etc., hasta llegar al 90, donde se parará.

BUCLES POR CONDICIÓN
Ejecuta las instrucciones del bucle mientras se cumple una condición.
X = 0
Do While X < 1000
X = X + 1
Loop
El programa toma una variable ( X ) que previamente tuvimos la curiosidad de ponerla a cero, e incrementa su valor una unidad. Analiza si el valor de X es menor que 1000, y si es cierto, vuelve a realizar el bucle. Así hasta que X ya no sea menor que 1000. Al dejar de cumplirse que X sea menor que 1000, sale del bucle.

MSGBOX
La síntaxis completa de la función MsgBox es:
MsgBox(mensaje[, botones][, título][, archivoAyuda, contexto])
Los valores que pueden tomar el parámetro botones son:

Constante
Valor
Descipción
vbOKOnly
0
Muestra sólo el botón acepatr
vbOKCancel
1
Botones aceptar y cancelar
vbAbortRetryIgnore
2
Botones anular, reintentar, e ignorar
vbYesNoCancel
3
Botones si, no y cancelar
vbYesNo
4
Botones si y no
vbRetryCancel
5
Botones reintentar y cancelar
vbCritical
16
Muestra el icono de mensaje critico
vbQuestion
32
Icono de interrogación
vbExclamation
48
Icono de exclamación
vbInformation
64
Icono de mensaje de información
vbAplicationModal
0
Cuadro de diálogo modal de la aplicación
vbSystemModal
4096
Cuadro de diálogo modal del sistema

El parámetro botones es de valor numérico, y además de los botones que aparecen en le cuadro de diálogo, también puede indicar el icono que acompañe al mensaje y el tipo de diálogo modal que es.

Eventos generales
Carga y descarga de formularios

Cuando se arranca una aplicación, o más en concreto cuando se visualiza por primera vez un formulario se producen varios eventos consecutivos: Initialize, Load, Activate y Paint.

Para inicializar las variables definidas a nivel de módulo se suele utilizar el evento Initialize, que tiene lugar antes que el Load. El evento Load se activa al cargar un formulario. Con el formulario principal esto sucede al arrancar la ejecución de un programa; con el resto de los formularios al mandarlos cargar desde cualquier procedimiento o al hacer referencia a alguna propiedad o control de un formulario que no esté cargado.

El foco (focus)

En todas las aplicaciones de Windows, en cualquiera de sus versiones, siempre hay un único control, formulario o ventana que puede recibir entradas desde teclado. En cada momento ese control, ventana o formulario es el que dispone del “foco” (focus). El objeto que posee el foco está caracterizado por estar resaltado con letra negrita, con un contorno más vivo o teniendo parpadeando el cursor en él. Este foco puede ser trasladado de un objeto a otro por código o por interacciones del usuario, como por ejemplo clicando con el ratón en distintos puntos de la pantalla o pulsando la tecla Tab. Cada vez que un objeto pierde el foco se produce su evento LostFocus y, posteriormente, el evento GotFocus del objeto que ha recibido el foco.
El método SetFocus permite dar el focus al objeto al que se aplica. Dos propiedades de muchos controles relacionadas con el foco son TabIndex y TabStop. TabStop determina si el foco se va o no a posar en el objeto al pulsar la tecla Tab. Un grupo de botones de opción tiene un único TabIndex, es decir, se comporta como si fuera un único control. Para elegir una u otra de las opciones se utilizan las flechas del teclado.

KeyPress

El evento KeyPress sucede cuando el usuario pulsa y suelta determinada tecla. En el procedimiento asociado con este evento el único argumento KeyAscii es necesario para conocer cuál es el código ASCII de la tecla pulsada.

Eventos relacionados con el ratón
Click y DblClick

El evento Click se activa cuando el usuario pulsa y suelta rápidamente uno de los botones del ratón. También puede activarse desde código (sin tocar el ratón) variando la propiedad Value de alguno de los controles. En el caso de un formulario este evento se activa cuando el usuario clica sobre una zona del formulario en la que no haya ningún control o sobre un control que en ese momento esté inhabilitado (propiedad Enabled = False).
El evento DblClick sucede al clicar dos veces seguidas sobre un control o formulario con el botón izquierdo del ratón.

miércoles, 24 de agosto de 2011

SENTENCIAS ESTRUCTURADAS O DE CONTROL


Definición: 
En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa.

Características: 
- Sentencias que agrupan otras sentencias. 
- Tiene su propio bloque definido de inicio y fin. 

Sentencias de decisión, condicional o de selección

Las sentencias de decisión o también llamadas de control de flujo son estructuras de control que realizan una pregunta la cual retorna verdadero o falso (evalúa una condición) y selecciona la siguiente instrucción a ejecutar dependiendo la respuesta o resultado.
En algún momento dentro de nuestros algoritmos, es preciso cambiar el flujo de ejecución de las instrucciones, es decir, el orden en que las instrucciones son ejecutadas. Muchas de las veces tenemos que tomar una decisión en cuanto a que se debe ejecutar basándonos en una respuesta de verdadero o falso (condición).
La ejecución de las instrucciones incluyendo una estructura de control como el condicional funcionan de esta manera:
  • Las instrucciones comienzan a ejecutarse de forma secuencial (en orden) y cuando se llega a una estructura condicional, la cual esta asociada a una condición, se decide que camino tomar dependiendo siempre del resultado de la condición siendo esta falsa o verdadera. 
  • Cuando se termina de ejecutar este bloque de instrucciones se reanuda la ejecución en la instrucción siguiente a la de la condicional.
Sentencia If
La instrucción if es, por excelencia, la más utilizada para construir estructuras de control de flujo.
Sintaxis: 
   if (condición)
      sentencia_por_verdad;
   else 
       sentencia_por_falso;

Notas:     El término else es opcional en caso que la decisión sea solo simple. 
                En caso de dos o más sentencias, estas se agrupan entre llaves {  }. 

Sentencia Switch
switch es otra de las instrucciones que permiten la construcción de estructuras de control. A diferencia de if, para controlar el flujo por medio de una sentencia switch se debe de combinar con el uso de las sentencias case y break.
Sintaxis: 
switch ( variable)   // la variable es de tipo entero o caracter //
 {
case valor1 :
accion1;
break;
case valor2 :
accion2;
break;
case valorN :
acciónN;
break;
default:
       accionD;
 }
Notas: cualquier número de casos a evaluar por switch así como la sentencia default son opcionales. La sentencia switch es muy útil en los casos de presentación de menus.

Sentencias de iteración, ciclos, repetitivas o de bucles.
Las Sentencias de Iteración o Ciclos son estructuras de control que repiten la ejecución de un grupo de instrucciones. Básicamente, una sentencia de iteración es una estructura de control condicional, ya que dentro de la misma se repite la ejecución de una o más instrucciones mientras o hasta que una a condición especifica se cumpla. Muchas veces tenemos que repetir un número definido o indefinido de veces un grupo de instrucciones por lo que en estos casos utilizamos este tipo de sentencias. en C++ los ciclos o bucles se construyen por medio de las sentencias for, while y do - while. La sentencia for es útil para los casos en donde se conoce de antemano el número de veces que una o más sentencias han de repetirse. Por otro lado, la sentencia while es útil en aquellos casos en donde no se conoce de antemano el número de veces que una o más sentencias se tienen que repetir.

Sentencias For
Sintaxis:
for (contador; final; incremento)
{
    código a repetir;
}

donde:
1.     contador es una variable numérica
2.     final es la condición que se evalúa, o sea, el valor final para contador
3.     incremento es el valor que se suma o resta al contador 

Ejemplo 1:
for(i=1; i<=10; i++)
{
   printf("Hola Mundo\n");  
}

Esto indica que el contador "i" inicia desde 1 y finaliza cuando el contador "i" sea menor o igual a 10 ( en este caso llegará hasta 10) e "i++" realiza la sumatoria por unidad lo que hace que el for y el contador se sumen. repitiendo 10 veces "Hola Mundo" en pantalla.

Sentencia while
Sintaxis:
while (condición)
{
    código a Repetir;
}

donde:
1.     condición es la expresión a evaluar

Ejemplo 1:

int contador = 0;
while(contador<=10)
{
    contador=contador+1;
    printf ("Hola Mundo\n");
}

El contador Indica que hasta que este llegue a el total de 10 entonces se detendrá y ya no se realizará el código contenido dentro de la sentencia while, de lo contrario mientras el "contador" sea menor a 10 entonces el código contenido se ejecutará desplegando hasta 10 veces "Hola Mundo" en pantalla.

Sentencia do - while

La sentencia do es usada generalmente en cooperación con while para garantizar que una o más instrucciones se ejecuten al menos una vez. Por ejemplo, en la siguiente construcción no se ejecuta nada dentro del ciclo while, el hecho es que el contador inicialmente vale cero y la condición para que se ejecute lo que está dentro del while es "mientras el contador sea mayor que diez". Es evidente que a la primera evaluación hecha por while la condición deja de cumplirse.

int contador = 0;
while(contador > 10)
{
    contador ++;
    printf ("Hola Mundo\n");
}

Al modificar el segmento de código anterior usando do tenemos:

int contador = 0;
do
{
    contador ++;
    printf ("Hola Mundo\n");
}
while(contador > 10);

Observe cómo en el caso de do la condición es evaluada al final en lugar de al principio del bloque de instrucciones y, por lo tanto, el código que le sigue al do se ejecuta al menos la primera vez.

viernes, 12 de agosto de 2011

Funciones de E/S de Lenguaje C para 2do.Bach. A. Informáticas

FUNCIONES DE ENTRADA Y SALIDA (E/S)
En lenguaje C no existen sentencias o instrucciones para realizar entradas y salidas. Para ello, el programador puede hacer uso de las funciones de entrada y salida estándar proporcionadas por la biblioteca estándar de lenguaje C: <stdio.h>, como son printf y scanf, entre otras.
La  función printf  permite visualizar  datos formateados en pantalla, es decir, permite indicar un formato como si de un impreso o formulario  se tratase  indicando donde  se deben  visualizar cada uno. 
El mensaje debe ir entre comillas dobles (") y dentro de las comillas  se puede  mostrar  cualquier  secuencia de  caracteres: 
     Printf("secuencia de caracteres, mensaje o etiqueta", nombre_de_variables);
La secuencia de caracteres puede contiene códigos o argumentos de formato que se asocian con los tipos de datos contenidos en las variables.
ARGUMENTOS DE FORMATO
Código
Formato
%d
Un entero
%i
Un entero
%c
Una caracter
%s
Una cadena
%f
Un real
%o
Octal
%x
Hexadecimal
%e
Notación Científica
%%
Imprime Porcentaje

Ejemplo:
Int suma=10;
Printf("La suma es %d", suma);

Explicación:
Declaramos primero la variable como entero, con un valor de 10, luego la función printf, el mensaje va entre comillas dobles, luego en el lugar que queremos que aparezca el valor, colocamos el formato de la variable, cerramos comillas, luego una coma y el nombre de la variable. Es importante recalcar, que en la posición que coloquemos el formato es donde aparecerá el valor de la variable en este caso, 10.
Ejemplo:
Char nombre[7]="Manuel";
printf("%s es en creador de este manual", nombre);
NOTA: el número de argumentos que tendrá la función printf() es indefinido, por lo que se puede transmitir cuantos datos sean necesarios.
Ejemplo:
Int x=12, y=15;
char z=’D’;
float v=10.2563;
printf("Estos son números %d %d %f; y esta es una letra %c", x,y,v,z);
También podemos hacer algunos arreglos, al formato de salida, por ejemplo, si deseamos imprimir un número real justificado a la izquierda podemos colocar:
printf("%-f", z);
para justificar colocarle signo: %+f
%20f >> Longitud numérica del campo
%.2f >>Imprime el valor con sólo dos decimales
ARGUMENTOS DE ESCAPES
Indica que debe ejecutar algo extraordinario.
Carácter
Explicación
\n
Nueva línea. Se utiliza para dejar un salto de línea
\t
Tabulador horizontal. Mueve el cursor al próximo tabulador
\v
Tabulador vertical.
\a
Hace sonar la alarma del sistema
\\
Imprime un carácter de diagonal invertida
\?
Imprime el carácter del signo de interrogación
\"
Imprime una doble comilla

Ejemplos:
1) printf("Manuel \n Antonio \n Ortez\n\n);
2) int x=15;
printf("El Valor de la variable es %d\n\n", x);
3) float x=8.5689, pi=3.1416;
printf("El valor de x es %.2f\t\n",x);
printf("\t Y el valor de pi es %.2f\n\n", pi);


 ENTRADA DESDE EL TECLADO
Se realiza mediante la función scanf(), su formato es:
scanf("formato de tipo de dato", Dirección y nombre de la variable);
Explicación: Primero y entre comillas el tipo de dato que va a leer:
scanf("%s", nom1);
como puede notarse, va a leer la cadena de texto que contendrá la variable nom1. cabe aclarar, que cuando se van a leer cadenas de texto, no es necesario colocar la dirección (&), lo cual no sucede con los otros tipos de datos:
scanf("%f", &n1);