miércoles 3 de diciembre de 2008

DEFINICIONES DE DATO Lenguaje C

Por: Anonimo

DEFINICIONES DE DATOS. DECLARACIONES


Todas las variables deben declararse antes de usarlas:

Indicar el tipo de datos al que pertenece.
Ello determina : Su representación en memoria.
  • El conjunto de valores posibles.
  • Las operaciones permitidas.
  • La forma de realizar las operaciones.
También se puede indicar:
  • La clase de localización en memoria.
  • El ámbito de existencia.
  • Un valor inicial.
El usuario puede definir tipos nuevos, combinando tipos predefinidos
pero...C no está orientado a los tipos estrictamente

REGLAS DE ALCANCE

Los objetos declarados fuera de la función son globales.
Al principio de cualquier bloque ( proposiciones entre { y } )
se pueden poner declaraciones.

Los objetos sólo son conocidos dentro del bloque en que
han sido declarados, y en los bloques anidados dentro.

Ejemplos de declaraciones

int n, m, *p, v[100];
float r, a[10][10], *pf[100];
char c, *s, lin[80];
float superficie();

struct naipe {
int valor;
char palo;
} carta ;

enum colores{ rojo, azul,
amarillo } color;

typedef struct {
float real;
float imaginaria;
} complejo;

complejo c1, c2;

Reglas de alcance

int g; /* "g" es variable global */

main( )
{
int a, b;
. . .
. .
{
float b, x, y;
. . . /* se conoce a "int a", pero no
. . . a "int b", que ha quedado
enmascarada. */
}

{
unsigned a;
char c, d;
. . . /* se conoce a "int b", pero no a
. . "int a".
No se conoce a "x" ni a "y" */
}

...
... /* se conoce a "int a" y a "int b".
... No se conoce a "x", "y", "c" */
...
}
La variable "g" es conocida en todos los bloques.

jueves 27 de noviembre de 2008

ESTRUCTURA Y FORMATO Lenguaje C

Por:marx

ESTRUCTURA Y FORMATO DEL PROGRAMA.
PANORAMA GENERAL.

• El formato de escritura
• Los comentarios
• Las sentencias para el pre-procesador
• Las funciones. Definición de una función
• Las declaraciones
• Reglas de alcance
• Las expresiones
• Las sentencias
• La sentencia "if-else"
• La sentencia "for"
• La función "printf"
• La función "scanf"

Los programas se construyen con:

Comentarios.
Ordenes para el preprocesador
de macros.
Definiciones de funciones.
Expresiones formadas con constantes, variables,
funciones y operadores.
Sentencias.

EL FORMATO DE ESCRITURA ES MUY FLEXIBLE:
Las constantes, identificadores y palabras clave deben separarse; pero
ello puede hacerse con :
- espacios en blanco
- marcas de tabulador
- marcas de salto de linea
- comentarios

LOS COMENTARIOS
Son lineas que ignora el compilador pero sirven para documentar los
programas:
Empiezan con: /*
terminan con: */
pueden abarcar varias lineas
no se pueden anidar

/*
ej1.c
Indica el menor de dos enteros leidos
*/
...
...
...
scanf("%d%d", &n1, &n2); /* aqui se leen dos
valores enteros */
...
...

LAS SENTENCIAS PARA EL PREPROCESADOR
Son órdenes que el preprocesador interpreta antes de que el código
fuente sea compilado.

El preprocesador produce un programa escrito en C que es lo que se
compila después.

Deben empezar con el símbolo " # " en la
primera columna.

# define PI 3.1416

LAS FUNCIONES

Un programa esta formado por funciones.
No se pueden definir anidadas.
Desde una función se puede llamar a cualquier otra.
Está permitida la recursividad.
Si no se indica otro tipo, las funciones son de tipo "int" por
defecto
El mecanismo de paso es por valor.
DEVUELVEN UN VALOR.

La función "main"

Todo programa debe contener una función llamada "main".
Es la invocada desde el sistema operativo cuando comienza la
ejecución del programa.
También devuelve un valor al medio de llamada.


DEFINICION DE UNA FUNCION

Encabezamiento . . . . . . . . . . . . tipo nombre (p1, p2, p3)
Declaración de parámetros . . . . . tipo p1, p2, p3;
{
Cuerpo con: Declaraciones . . . . . . tipo v1, v2, v3;
Sentencias . . . . . . sentencia
...
}






miércoles 26 de noviembre de 2008

Historia breve del Lenguaje C

Por: Marx
El lenguaje C fue diseñado por Dennis Ritchie, de los Laboratorios Bell, y se instaló en un PDP-11 en 1972.
Se diseñó para ser el lenguaje de los sistemas operativos UNIX.
Se creó para superar las limitaciones del lenguaje B, utilizado por Ken Thompson para producir la versión original de UNIX en 1970.
El lenguaje B se basó en BCPL, lenguaje sin tipos desarrollado por Martin Richards, en 1967, para programación de sistemas.

Su definición apareció en 1978:
apéndice "C Reference Manual"
del libro "The C programming Language"
de Brian W. Kernighan y Dennis M. Ritchie
(Ed. Prentice-Hall)

En 1983, se publicó otro estándar:
"The C Programming Language-Reference Manual"
(Lab.Bell)
escrito por Dennis M. Ritchie
ES UN LENGUAJE DE NIVEL MEDIO
Combina elementos de lenguajes de alto nivel (tipos, bloques, ...) con la funcionalidad de los ensambladores.
Permite manejar los elementos típicos de la programación de sistemas:
bits
bytes
direcciones
NO ESTA FUERTEMENTE ORIENTADO A TIPOS
Tiene cinco tipos de datos básicos, tipos estructurados y admite definición de tipos por el usuario.
Pero permite casi todas las conversiones (p.ej. se pueden mezclar los tipos "int" y "char" en casi todas las expresiones).
No hace comprobaciones de error en tiempo de ejecución (desbordamiento de arrays, ...)
"Deja hacer" al programador.

ES UN LENGUAJE SEMI-ESTRUCTURADO
No es completamente estructurado en bloques porque no permite declarar procedimientos o funciones dentro de otros procedimientos o funciones.
Pero tiene algunas características propias de los lenguajes estructurados:
• Dos formas de estructuración del código:
Con funciones independientes
Con bloques
• Dispone de las sentencias típicas para construir estructuras de control:
while
do-while
for

Se diseñó para la programación de sistemas
Los programas son muy transportables
Actualmente se usa para otros propósitos

BIBLIOGRAFIA
"The C programming language"
Brian W Kernighan y Dennis M. Ritchie
Ed. Prentice-Hall, segunda edición, 1988.
"Lenguaje C. Introducción a la programación"
Al Kelley e Ira Pohl
Ed. Addison-Wesley, 1987 (edición original, en 1984).
"C estándar. Guía de referencia para programadores"
P.J. Plauger y Jim Brodie
Ed. Anaya Multimedia, 1990 (primera edición en 1989)
"C. Manual de referencia. Segunda edición"
Herbert Schildt
Ed. McGraw-Hill, 1990.
Manual de Referencia de la implementación
que se use.

lunes 24 de noviembre de 2008

VARIABLES. DEFINICION Y ENTORNO Visual basic

Por: Mono

VARIABLES. DEFINICION Y ENTORNO

Basic no exigió la definición previa de una variable. Una variable, es un nombre que en el programa le asignamos a un dato. Ese dato podrá cambiar. Piense por ejemplo, en un programa consistente en la toma de datos de los alumnos de una escuela. Existirán variables para introducir los datos de los alumnos.

Estas variables pueden tener nombre como:

Nombre

ApellidoM

ApellidoP

Dirección

Teléfono

OPTION EXPLICIT

Obliga a declarar previamente las variables que se vayan a usar. De no haberla declarado antes de usarla, manda error.

TIPOS DE VARIABLES

Las variables pueden ser de los siguientes tipos: (El número indicado en segundo lugar indica el número de Bytes que ocupa en memoria.)

Booleana (2) Admite los valores 0 y 1, o True (verdadero) y False (falso)

Byte (1) Números enteros, en el rango de 0 a 255

Integer (2) Números enteros en el rango de -32768 a 32767

Long (4) Números enteros en el rango de -2147483648 a 2147483647

Single (4) Punto flotante, simple precisión

Doble (8) Punto flotante, doble precisión.

Currency (8) Entero, con punto decimal fijo (Típico de monedas)

String (*) Cadenas alfanuméricas de longitud variable o fija

Date (8) Fechas

Objet (4) Referencia a objetos

Variant (**) Otros tipos de datos

(*) Una variable tipo String ocupa el mismo número de bytes que caracteres tenga la cadena.

(**) Una variable tipo Variant ocupa 16 bytes si se trata de un número y 22 bytes + longitud de la cadena si se trata de un dato tipo cadena de caracteres.


viernes 21 de noviembre de 2008

Estructuras de Control visual basic

Por: Cruz

Estructuras de Control

Las estructuras de control le permiten controlar el flujo de ejecución del programa. Tenemos dos tipos de estructuras de control:

• Estructuras de decisión

• Estructuras de bucle

Estructuras de Decisión

Los procedimientos de Visual Basic pueden probar condiciones y, dependiendo de los resultados, realizar diferentes operaciones. Entre las estructuras de decisión que acepta Visual Basic se incluyen las siguientes:

If...Then

If...Then...Else

Select Case

Select Case

Visual Basic proporciona la estructura Select Case como alternativa a If...Then...Else para ejecutar selectivamente un bloque de sentencias entre varios bloques. La sentencia Select Case ofrece posibilidades similares a la instrucción If...Then...Else, pero hace que el código sea más legible cuando hay varias opciones.

La estructura Select Case funciona con una única expresión de prueba que se evalúa una vez solamente, al principio de la estructura. Visual Basic compara el resultado de esta expresión con los valores de cada Case de la estructura. Si hay una coincidencia, ejecuta el bloque de sentencias asociado a ese Case:

Selec Case expresión_prueba

[Case lista_expresiones1

[bloque de sentencias 1]]

[Case lista_expresiones2

[bloque de sentencias 2]]

.

.

.

[Case Else

[bloque de sentencias n]]

End Select


Estrucuras de Repeticion

Las estructuras de repetición o bucle le permiten ejecutar una o más líneas de código repetidamente. Las estructuras de repetición que acepta Visual Basic son:

• Do...Loop

• For...Next

• For Each...Next

1. Do...Loop

Utilice el bucle Do para ejecutar un bloque de sentencias un número indefinido de veces. Hay algunas variantes en la sentencia Do...Loop, pero cada una evalúa una condición numérica para determinar si continúa la ejecución. Como ocurre con If...Then, la condición debe ser un valor o una expresión que dé como resultado False (cero) o True (distinto de cero).

Do While condición

Sentencias

Loop

Cuando Visual Basic ejecuta este bucle Do, primero evalúa condición. Si condición es False (cero), se salta todas las sentencias. Si es True (distinto de cero) Visual Basic ejecuta las sentencias , vuelve a la instrucción Do While y prueba la condición de nuevo.


Otra variante de la instrucción Do...Loop ejecuta las sentencias primero y prueba la condición después de cada ejecución. Esta variación garantiza al menos una ejecución de sentencias:

Do

Sentencias

Loop While condición

Hay otras dos variantes análogas a las dos anteriores, excepto en que repiten el bucle siempre y cuando condición sea False en vez de True.

Hace el bucle cero o más veces Hace el bucle al menos una vez

Do Until condición Do

Sentencias Sentencias

Loop Loop Until condición

2. For...Next

Los bucles Do funcionan bien cuando no se sabe cuántas veces se necesitará ejecutar las sentencias del bucle. Sin embargo, cuando se sabe que se va a ejecutar las sentencias un número determinado de veces, es mejor elegir el bucle For...Next. A diferencia del bucle Do, el bucle For utiliza una variable llamada contador que incrementa o reduce su valor en cada repetición del bucle. La sintaxis es la siguiente:

For contador = iniciar To finalizar [ Step incremento]

Sentencias

Next [contador]

Los argumentos contador, iniciar, finalizar e incremento son todos numéricos.

Nota: El argumento incremento puede ser positivo o negativo. Si incremento es positivo, iniciar debe ser menor o igual que finalizar o no se ejecutarán las sentencias del bucle. Si incremento es negativo, iniciar debe ser mayor o igual que finalizar para que se ejecute el cuerpo del bucle. Si no se establece Step, el valor predeterminado de incremento es 1. Al ejecutar el bucle For, Visual Basic:

• Establece contador al mismo valor que iniciar.

• Comprueba si contador es mayor que finalizar. Si lo es, Visual Basic sale del bucle. (Si incremento es negativo, Visual Basic comprueba si contador es menor que finalizar. )

• Ejecuta las sentencias.

• Incrementa contador en 1 o en incremento, si se especificó.

• Repite los pasos 2 a 4.

Este código imprime los nombres de todas las fuentes de pantalla disponibles:

Private Sub Form-Click ( )

Dim I As Integer

For i = 0 To Screen.FontCount

Print Screen.Fonts (i)

Next

End Sub

3. For Each...Next

El bucle For Each...Next es similar al bucle For...Next, pero repite un grupo de sentencia por cada elemento de una colección de objetos o de una matriz en vez de repetir las sentencias un número especificado de veces. Esto resulta especialmente útil si no se sabe cuántos elementos hay en la colección. He aquí la sintaxis del bucle For Each...Next:

For Each elemento In grupo

Sentencias

Next elemento

Tenga en cuenta las restricciones siguientes cuando utilice For Each...Next:

• Para las colecciones, elemento sólo puede ser una variable Variant, una variable Object genérica o un objeto mostrado en el Examinador de objetos.

• Para las matrices, elemento sólo puede ser una variable Variant.

• No puede utilizar For Each...Next con una matriz de tipos definidos por el usuario porque un Variant no puede contener un tipo definido por el usuario.

El siguiente ejemplo habilita todos los Cuadro de Texto de un formulario :

Private Sub ModoEdición ( )

Dim control

For Each control In form1.Controls

If TypeOf control Is TextBox Then

Control.Enabled = True

End If

Next control

End Sub

Salida de una Estructura de Control

La instrucción Exit le permite salir directamente de un bucle For o de un bucle Do. La sintaxis de la sentencia Exit es sencilla: Exit For puede aparecer tantas veces como sea necesario dentro de un bucle For y Exit Do puede aparecer tantas veces como sea necesario dentro de un bucle Do:

For contador = iniciar To finalizar [ Step incremento]

[bloque sentencias]

[ Exit For ]

[bloque sentencias]

Next [contador]

Do [{ While / Until } condición]

[bloque de sentencias]

[ Exit Do ]

[bloque de sentencias]

Loop

Do

[bloque de sentencias]

[ Exit Do ]

[bloque de sentencias]

Loop [{ While / Until } condición]

Exit For y Exit Do son muy útiles ya que, algunas veces, resulta apropiado salir inmediatamente de un bucle sin realizar más iteraciones o sentencias dentro del bucle.

Cuando utilice la instrucción Exit para salir de un bucle, el valor de la variable contador difiere, dependiendo de cómo haya salido del bucle:

• Cuando termina un bucle, la variable contador contiene el valor del límite superior más el paso.

• Cuando sale de un bucle prematuramente, la variable contador conserva su valor según las reglas usuales del alcance.

• Cuando sale antes del final de una colección, la variable contador contiene Nothing si se trata de un tipo de dato Object y Empty si es un tipo de dato Variant.


miércoles 19 de noviembre de 2008

Formato a numeros mascara Visual Basic

Por: Marx

Como aplicar la mascara a numero para desplegarlo en un cuadro de texto.
Ingresa un cuadro de texto en las propiedades, escribe en (Nombre) Valor

Ingresa el siguiente código

Private Sub Form_Load()
Valor = 1936
Valor = Format(Valor, "##,#0.00")
End Sub


Si quieres mas artículos como este, Subscribete al blog por email...es gratis!

lunes 17 de noviembre de 2008

Evento Lostfocus Visual basic

Por: Marx

El evento lost focus se activa cuando el foco o cursor deja de estar en el objeto, utilizaremos este evento en el text1, ingresar una fecha escribiendo -(guiones) entre el dia-mes-año, el programa verifica que sea una fecha valida, de ser lo hará una resta regresando el numero de días que restan del año.
Ingrese en el formulario 1 cuadro de texto, 1 label y 1 botón de comando

Este es el codigo:


Option Explicit

Private Sub Command1_Click()
' envia el focus al text1
Text1_LostFocus
End Sub

Private Sub Text1_LostFocus()
'evento focus
Dim AFecha, Ndias
'Verifica que sea una fecha valida
If IsDate(Text1.Text) Then
'convierte el contenido del text1 en fecha
AFecha = CDate(Text1.Text)
'resta los dias que hay hasta fin de año
Ndias = DateSerial(Year(AFecha) + 1, 1, 1) - AFecha
Label1.Caption = "Quedan " & Ndias & " dias en el año."
Else
MsgBox Text1.Text & " NO es válida la fecha"
Text1.SetFocus
End If
End Sub

Si quieres mas artículos como este, Subscribete al blog por email...es gratis!