Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Unidad 2 Milangela

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 6

INTRODUCCION (MILANGELA)

A la hora de elaborar un programa es necesario usar unos datos, y para ello es


imprescindible en muchos casos grabar esos datos en memoria para operar con
ellos posteriormente. Ahora bien, para grabar esos datos en la RAM podemos
hacerlo racionalmente con dos elementos, llamados: variables y constantes.

CONSTANTES
Son Elementos de almacenamiento de datos o direcciones de memoria, que no
varían de ninguna forma durante el proceso del programa. Con lo que su valor será
el mismo tanto al comienzo como al final de este.

Las constantes no solo funcionan en cualquier parte del procedimiento como las
variables globales sino que también devuelven su valor almacenado en cualquier
parte del código o programa.

Existen 4 tipos distintos de constantes


 C.enteras.
 C.de cóma flotante.
 C.de carácter.
 C.de cadena de caracteres.

Las constantes enteras: Este tipo de constantes pueden estar escritas en 3 tipos
de sistemas numéricos, como son, el decimal, octal, y hexadecimal.
 Si la constante empieza por cero esta seria una constante entera escrita en
octal (solo llevara del 0 al 7).
 Si la constante empieza por 0 o x será una constante entera escrita en
hexadecimal (0 > 9 >F).
 En caso de no cumplirse estas condiciones anteriores estaríamos ante una
constante entera decimal.

Las constantes de coma flotante o decimal: Distinguen la parte decimal de la


entera por un punto, para el añadido de exponentes usa la letra “E”.

Las constantes de carácter: Se representa el valor de la constante encerrado


entre apostrofos.

Las constantes de cadena: Almacena una cadena de caracteres que está


encerrada entre comillas.

También podemos especificar cualificadores en las constantes con lo cual


tendríamos

 Si la constante acaba en UL estaremos ante una constante larga y sin signo.


 Si la constante acaba solo en U, estaremos ante una constante sin signo.
 Si la constante acaba en L, estaremos ante una constante larga.
COMO DEFINIR UNA CONSTANTE? (MARIA)
Las constantes afectan a todas las funciones que se encuentran dentro del
cualquier parte o función de nuestro programa.

Por ello se definen encima del main y debajo de los include. Las constantes se
definen y se declaran al mismo tiempo. Se les da ya el valor. Esto se hace con una
directriz “#define” a continuación va el identificador de esa constante o lo que es lo
mismo su nombre, y por ultimo su valor.

Ejemplo:
#include <stdio.h>
#define PI 3.1416
main () {
printf( "
\nEl numero PI vale: %f”, PI);
}

Observemos en la segunda línea de nuestro código-programa. Ponemos la directriz


#define que definirá constantes, a continuación su ID (identificador o nombre), un
último espacio y al final el valor de esa constante.

VARIABLES: son Elementos de almacenamiento de datos o direcciones de


memoria, que pueden variar en el desarrollo o proceso del programa. Tanto las
variables como las constantes las utilizamos a la hora de programar para almacenar
en ellas unos datos determinados y poder nombrarlas en cualquier parte de nuestro
código-programa para que nos devuelvan esos datos anteriormente introducidos.

CLASIFICACIÓN DE LAS VARIABLES


Por su contenido

 Variables Numéricas: Son aquellas en las cuales se almacenan valores numéricos,


positivos o negativos, es decir almacenan números del 0 al 9, signos (+ y -) y el punto
decimal.
Ejemplo: iva = 0.15 pi = 3.1416 costo = 2500
 Variables Lógicas: Son aquellas que solo pueden tener dos valores (cierto o falso) estos
representan el resultado de una comparación entre otros datos.
 Variables Alfanuméricas: Esta formada por caracteres alfanuméricos (letras, números y
caracteres especiales).
Ejemplo: letra = ’a’ apellido = ’lopez’ direccion = ’Av. Libertad #190 ’

Por su uso
 Variables de Trabajo: Variables que reciben el resultado de una operación matemática
completa y que se usan normalmente dentro de un programa.
Ejemplo: Suma = a + b /c
 Contadores: Se utilizan para llevar el control del numero de ocasiones en que se realiza
una operación o se cumple una condición. Con los incrementos generalmente de uno en
uno.
 Acumuladores: Forma que toma una variable y que sirve para llevar la suma acumulativa
de una serie de valores que se van leyendo o calculando progresivamente.
DEFINICIÓN DE UNA VARIABLE (SOLEXIS)
Definir una variable es indicar el tipo de dato que va a contener y almacenar, y en
función de esto reservar una determinada dirección de memoria o palabra de
memoria. Con lo que si queremos que una variable contenga un dato numérico
deberemos de definirla de distinta forma que si queremos que contenga una cadena
de caracteres. Cuando definimos una variable no le estamos introduciendo ningún
valor, sino que únicamente estamos indicando que tipo de valor va almacenar
posteriormente. Es obligatorio que siempre definamos una variable antes de
introducir en ella un valor, y esto es así porque es necesario que se reserve en
memoria un espacio limitado más o menos grande dependiendo del tipo de dato
que vaya a albergar dicha variable.

Para definir una variable


La sintaxis a seguir es: [cualificador] <tipo> <ID>
En manuales o tutoriales de informática lo que se encuentra entre corchetes es
opcional y el resto es obligatorio.

Ante esa sintaxis, decimos que donde cualificador podemos poner opcionalmente
uno de los disponibles que se encargan de variar o alterar el tipo de dato (será
explicado a continuación), posteriormente ira el tipo de dato, ya sea entero, decimal,
etc. Y por último el identificador o nombre de la variable.

TIPOS DE DATOS
En cualquier lenguaje de programación es muy importante saber manejar los
distintos tipos de datos que te permite almacenar y trabajar con ellos. Como ya
vimos anteriormente las variables almacenan datos. Pero a la hora de definirlas hay
que indicarles que tipo de dato van a almacenar.

Existen 4 tipos de datos en C:


1) int Almacenan números enteros (sin decimales). Este tipo limita el rango
numérico de 32767 a 32767. Este tipo reserva en memoria 16 bits o lo que es lo
mismo 2 bytes.
2) char Almacena un carácter o caracteres, en realidad lo que hace es almacenar
un numero del 0 al 255 que son los números que identifican a un carácter que
corresponde a la tabla ascii. Este tipo ocupa en memoria 1 byte.
3) float Tipo para definir que una variable almacenara números decimales. Su
rango numérico es de 3,4E-38 a 3,4E38. Su espacio en memoria es de: 4bytes.
4) double Igual que la anterior pero es capaz de almacenar mayores cadenas
numéricas. Rango de 1,7E-307 a 1,7E308. Su espacio en memoria es de 8 bytes.

Algunos tipos admiten unos prefijos a los cuales se les suelen llamar cualificadores,
estos son: short(corto), long(largo), signed(con signo + o -), unsigned (sin signo).

Estos cualificadores se colocan al principio del tipo y lo cualifican, ejemplos:


Short intidentificador: esto definirá a una variable de tipo entero y corto.
Unsigned float identificador: esto definirá una variable de coma flotante o sea
decimal y sin signo.
IDENTIFICADORES (RAMON)
Los identificadores son las palabras con las que identificamos o llamamos a una
variable o constante. A la hora de dar nombre a una variable, o sea a la hora de
identificar una variable debemos de tener en cuenta unas reglas de nomenclatura,
marcadas por el lenguaje de programación en C.

Reglas de nomenclatura para los identificadores


Los nombres de los identificadores pueden llevar caracteres alfa-numéricos. Letras
de la A a la Z excluyendo la ñ que no vale L. Y todos los números. Si es obligatorio
que el nombre del identificador empiece por una letra y no un numero u otro signo.

Los identificadores solo aceptan el signo _ (guión bajo-subrayado), por tanto


quedan excluidos otros como el signo de interrogación, los paréntesis, etc.

Tampoco podremos usar como identificadores las palabras reservadas de un


lenguaje, palabras tales como: if, else, goto, etc.

El numero de caracteres de un identificador nunca debe sobrepasar los 31. Algunos


compiladores solo reconocen los 8 primeros caracteres de los identificadores. Esto
ya depende del potencial del compilador.

Recordemos que en C se distinguen entre mayúsculas y minúsculas con lo cual es


distinto un identificador tal como, Suma que otro como suma. (Por convenio se ha
decidido que los identificadores estén escritos en minúsculas.)

Lógicamente a la hora de dar nombre a una variable o constante, utilizaremos


identificadores que nos hagan referencia o semejanza al dato que almacenan. Con
lo que si necesitamos una variable para almacenar la cadena de caracteres: Hola,
sería conveniente llamar o identificar esta variable como saludo y no como x. Los
nombres de variables y constantes o sea los identificadores es adecuado que si su
valor almacenado tiene relación unos con otros, los nombres de los identificadores
también tengan esa relación (de forma léxica). Con todo esto lo que quiero decir es
que nunca escatimemos en el tiempo de búsqueda para dar nombre a una variable
o constante. Si le damos un nombre cualquiera luego al repasar el código todo nos
resultara mas confuso.

Palabras reservadas
Hay ciertos indicadores, identificadores o palabras llamadas palabras reservadas
(valga la redundancia) que no se pueden usar como identificadores, puesto que ya
son usadas por el propio lenguaje para una finalidad determinada.

Estas palabras son por lo general en ingles. Lo bueno es que no hace falta tener
mucho nivel de ingles para comprenderlas.

Algunas de estas palabras son: auto, break, case, char, const, continue, default, do,
double, else, enum, extern, flota, for, goto, if, int, long, register, return, short, signed,
sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while.
EJEMPLO DE DEFINICION VARIABLES (OTRO CHAMO)
Una vez vista toda la teoría apliquémoslo a la práctica
1) int suma
2) long float resultado
3) char letra

1: En el primer caso estamos definiendo una variable de tipo entero (int). O sea una
variable que almacenara un dato numérico entero, sin decimales. Dicha variable es
identificada por el nombre suma (su identificador).

2: En el segundo de los casos, definimos una variable de tipo de coma flotante o lo


que es lo mismo decimal y además le atribuimos el cualificador long lo que hace
que sea una variable de tipo decimal larga, esto hace que su rango numérico
aumente. Y su nombre o identificador es: resultado.

3: En el tercer y último caso definimos una variable de tipo carácter, y esta


almacenara un carácter. Su ID es: letra.

ASIGNACIÓN DE VALORES A VARIABLES


Es aquí cuando estamos verdaderamente introduciendo un dato dentro de una
variable (dirección de memoria). Una vez que tenemos una variable definida, esta
ya esta lista para albergar en su interior un dato pero esto solo podrá ser del tipo
con el que se a definido la variable. Cuando metemos en una variable un dato se
dice que la estamos declarando. Aunque el concepto y la diferencia entre definir y
declarar no es muy claro.

definir una variable es reservar el espacio en memoria y decir de que tipo va a ser,
y cuando le metemos un dato ya estamos declarándola. Mas adelante esta
definición se emplea a la inversa para las funciones.

Vamos a introducir valores a las variables definidas en el ejemplo anterior.


1) suma=2;
2) resultado=10.5;
3) letra=’A’;

1: Aquí estamos introduciendo el numero 2 dentro de la variable suma. Con lo que


suma pasara a valir 2.

2: En el segundo caso, damos un numero decimal que introducimos dentro de la


variable de tipo decimal. Así pues, la variable resultado ahora vale 10.5.

3: Por ultimo la variable de carácter “letra” le asignamos la letra a. Desde entonces


siempre que sea nombrada o referida por su identificativo nos devolverá la letra a.
Podríamos declararla de otra forma obteniendo el mismo resultado, tal y como es:
letra = 65; De esta otra forma obtendríamos el mismo resultado pues que coge los
números identificativos a caracteres de la tabla ASCII.
TAMAÑO DE UNA VARIABLE (YOSELIN)
Cuando definimos una variable, debemos saber con prioridad si va a almacenar una
cantidad de bits pequeña o grande. Si la variable es de tipo entero (int) y almacena
un numero mayor del rango que tiene este tipo de dato, se producirá un overflow. A
la hora de hacer un programa debemos ser previsores e intentar poner el tipo de
dato con un rango que soporte las posibles cifras a introducir en ese programa.

Por ello es bueno conocer la forma de averiguar el rango de un tipo de dato, puesto
que sabérselos de memoria es tontería e imposible.

Para conocer el tamaño o rango numérico que alcanza un determinado tipo de dato
se usa la función sizeof.

#include <stdio.h>
main () {
printf( "El tipo de dato entero (int) ocupa %i bytes\n", sizeof(int));
}

En este programa saldrá imprimido “4 bytes” . Sabiendo que un byte son 8 bits,
(4*8) son el resultado de bits que ocupa el tipo de dato entero (int). Para calcular el
máximo numero del rango que puede alcanzar este tipo de dato se hace elevando
(2^32) a la 32 que era el numero de bits y obtenemos “4.294.967.296”.

Pero esta cifra podría variar en función del uso de los ya anteriormente llamados
cualificadores. La función “sizeof” se encuentra dentro de la librería “stdio.h”.

Diferencias entre ambas

Después de haber visto cada una por separado, pasemos a explicar las diferencias
que existen entre constantes y variables. A primera vista pudieran parecer
conceptos similares, pero realmente son cosas muy distintas. Y esta distinción
viene dada por la posibilidad que tienen las variables para cambiar de valor.

Principales diferencias:

 Las constantes ya reciben un valor inicial en su declaración


 Las variables primero se declaran, luego se inician, y luego se usan
 Las constantes, una vez declaradas mantienen su valor durante toda la
ejecución del programa
 En cambio, las variables pueden cambiar su valor tantas veces como deseen
 Además de cambiar su valor, las variables también pueden cambiar de
tamaño en tiempo de ejecución (punteros)

Nota: En el último punto se alude a las variables que cambian su tamaño. Como
curiosidad saber que se denominan variables dinámicas o punteros, pero debido
a su complejidad no son objeto de este tutorial. Todas las demás variables son
estáticas y se tratarán las más significativas.

También podría gustarte