martes, 26 de febrero de 2013

VARIABLES Y CONSTANTES


VARIABLES

Una variable permite el almacenamiento de datos en la memoria. Es una abstracción que permite referirnos a una zona de memoria mediante un nombre (su identificador). Todas las variables tienen asociadas un tipo que determina los valores que pueden almacenarse y las operaciones que pueden efectuarse con los datos de ese tipo. Además, el término variable indica que el contenido de esa zona de memoria puede modificarse durante la ejecución del programa.
Nombres de variables
Los nombres que pueden asignarse a las variables deben regirse por unas normas básicas:
  • Pueden contener letras, dígitos y el carácter de subrayado (_).
  • No pueden empezar con un número: deben comenzar por una letra o con el carácter de subrayado (_).
Finalmente, recordar que, como identificador que es, el nombre de una variable es sensible a las mayúsculas y no pueden coincidir con una palabra reservada a no ser que tenga el prefijo @, aunque no es una práctica recomendada.
Declaración de variables
Antes de usar una variable se debe declarar. La declaración de una variable indica al compilador el nombre de la variable y su tipo. Una declaración permite que se pueda reservar memoria para esa variable y restringir el espacio (cantidad de memoria) que requiere, los valores que pueden asignársele y las operaciones en las que puede intervenir.
La sintaxis de una declaración es sencilla: tan sólo hay que especificar el tipo de la variable y el nombre que se le asocia. La declaración debe concluir con el carácter punto y coma. Por ejemplo, si vamos a emplear una variable para guardar en ella el valor del área de un círculo debemos:
  • Darle un nombre significativo: Área
  • Asociarle un tipo: dado que puede tener decimales y no se requiere una gran precisión, bastará con el tipo float.

float Área;
Cuando se van a declarar múltiples variables del mismo tipo no es necesario que cada declaración se haga por separado, pueden agruparse en la misma línea compartiendo el tipo. Por ejemplo, las declaraciones:

float Radio;
float Área;
pueden simplificarse en una línea:
float Radio, Área;
De la misma manera pueden declararse e inicializarse variables en una sola línea:
   int a=1, b=2, c, d=4;
No existe ninguna zona predeterminada en el código para la declaración de variables, la única restricción es que la declaración debe realizarse antes de su uso.
No es conveniente abusar de la declaración múltiple de variables en una línea. Desde el punto de vista de la legibilidad es preferible, por regla general, que cada variable se declare separadamente y que la declaración vaya acompañada de un breve comentario:
float Radio; 
// Radio del circulo del cual se calcula el área.
float Área;   // Área del circulo
Acceso a variables
Una variable se usa para asignarle un valor (acceso de escritura) o para utilizar el valor almacenado (acceso de lectura).
Una vez declarada una variable debe recibir algún valor (es su misión, después de todo). Este valor lo puede recibir de algún dispositivo (flujo de entrada) o como resultado de evaluar una expresión. La manera más simple de proporcionar un valor a una variable es emplear la instrucción de asignación:
Radio = 10.0F;
En el ejemplo se asigna el valor (literal entero) 10 a la variable Radio. El valor que tuviera almacenado la variable Radio se pierde, quedando fijado a 10.
En la misma línea de la declaración puede asignarse un valor a la variable, por lo que declaración e inicialización:
float Radio;   // Declaración
Radio = 10.0F; // Inicialización
pueden simplificarse en una sola línea:
float Radio = 10.0F;   // Declaración e Inicialización
La manera más simple de leer el valor de una variable es emplearla como parte de una expresión, por ejemplo, en la parte derecha de una instrucción de asignación:
Área = 2 * 3.1416F * Radio * Radio;
La variable Radio (su valor) se emplea en la expresión 2 * 3.1416 * Radio * Radio para calcular el área de un círculo de radio Radio. Una vez calculado el valor de la expresión, éste se asigna a la variable Área.
Otra manera de acceder al valor de una variable para lectura es emplearla como el argumento de una instrucción de escritura WriteLine. Por ejemplo,
Console.WriteLine(Área);
mostrará en la consola el valor de la variable
Área.
Leer el valor de una variable no modifica el contenido de la variable.
A modo de resumen, un programa que calcula y muestra el área de un círculo de radio 10 es el siguiente:

Calculo del área de un círculo (1)
using System;
class Area1
{
   static void Main(string[] args)
   {
      float Radio = 10.0F;     
      float Area = Area = 2 * 3.1416F * Radio * Radio; 
      Console.WriteLine(Area);
      Console.ReadLine();
   }
}
Como puede parecer evidente, emplear una variable que no ha sido declarada produce un error en tiempo de compilación. En C#, además, hay que asignarle un valor antes de utilizarla. Si no se hace se genera un error en tiempo de compilación ya que esta comprobación (igual que ocurre en Java) se efectúa por el compilador.

void f()
{
  int i;
  Console.WriteLine(i); 
  // Error: uso de la variable local no asignada 'i'
}

TAMAÑO DE UNA VARIABLE
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 número 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 imposible.

EJEMPLOS DE VARIABLE
Las variables en el lenguaje c pueden ser de diferentes tipos de datos, de acuerdo a la necesidad de almacenar datos que surja al momento del desarrollo del programa.

El lenguaje C diferencia MAYUSCULAS y minúsculas, por lo que no es lo mismo  VARIABLE1 que variable1 ni que VariAble1.
La declaración de variables en C se realiza de la siguiente manera:
tipo_dato nombre;
Ejemplos:
            char letra;
            int edad;
            float costo;
También se pueden declarar varias variables de un mismo tipo en una sola línea de la siguiente forma:
tipo_dato variable1,variable2, variable3 , ... , variableN;
Ejemplos:
            int hora, minutos, segundos, numero;
            float radio, perimetro, area, costo;
            char letra1, letra2, letra3;

También podemos asignarle un valor a la variable al momento de declararla:
tipo_dato variable1=valor1;
Ejemplos:
            int hora=19, minutos=0, segundos=11;
            char letraConocida='a', letraDesconocida;
            float precioPizza=10.75, precioSoda=1.25;

CONSTANTES
Una constante se define de manera parecida a una variable: modeliza una zona de memoria que puede almacenar un valor de un tipo determinado. La diferencia reside en que esa zona de memoria (su contenido) no puede modificarse en la ejecución del programa. El valor de la constante se asigna en la declaración.
Sintácticamente se especifica que un dato es constante al preceder con la palabra reservada const su declaración. Por ejemplo, para declarar una constante de tipo float llamada PI y asignarle el valor (constante) 3.1416 se escribirá:
const float PI = 3.1416;
Solo se puede consultar el valor de una constante, nunca se debe intentar modificarlo porque se produciría un error en tiempo de compilación. Por ejemplo, la siguiente instrucción:
Área = 2 * PI * Radio * Radio;
Utiliza la constante
PI
declarada anteriormente, usando su valor para evaluar una expresión.
Podemos modificar el programa anterior para que utilice la constante PI:


Existen cuatro tipos distintos de constantes.
·         ENTERAS
·         DE COMA FLOTANTE
·         DE CARÁCTER
·         DE CADENA DE CARACTERES

Ø  LAS CONSTANTES ENTERAS:
 Este tipo de constantes pueden estar escritas en tres tipos de sistemas numéricos, como son el decimal, octal, y hexagesimal.
Si la constante emieza por cero esta sería una constante entera escrita en octal( sólo llevará 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 con estas condiciones anteriores estaríamos ante una constante entera decimal.
Ø  LAS CONSTANTES DE COMA FLOTANTE:
Distinguen la parte decimal de la entera por un punto, para el añadido de exponentes usa la letra “E”.
Ø  LAS CONTANTES DE CARÁCTER:
 Se representa el valor de la constante encerrado entre apóstrofos.
Ø  LAS CONSTANTES EN CADENA:
 Almacena una cadena de caracteres que está encerrada entre comillas.

CALCULO DEL AREA DE UN CÍRCULO
using System;
class Area2
{
   static void Main(string[] args)
   {
      const float PI = 3.1416F;  
      float Radio = 10.0F;     
      float Area = 2 * PI * Radio * Radio; 
      Console.WriteLine(Area);
      Console.ReadLine();
   }
}

Ámbito de variables y constantes
El ámbito (del inglés scope) de una variable y/o constante indica en qué partes del código es lícito su uso.
En C# el ámbito abarca desde el lugar de su declaración hasta donde termina el bloque en el que fue declarada.
En el ámbito de una variable no puede declararse otra variable con el mismo nombre (aunque sea en un bloque interno, algo que si está permitido en C++):
   static void Main(string[] args)
   {
      float Radio = 10.0F;     
      ...
      if (Radio > 0){
         float Radio = 20.0F;
              // Error: No se puede declarar una variable
              // local denominada 'Radio' en este ámbito.
      }
      ...
   }

 EJEMPLOS  DE CONSTANTES

Las constantes en lenguaje C se definen de la siguiente forma:
#define NOMBRE valor
Ejemplos:
            #define PI 3.14
            #define TAMANIO 100
            #define CARACTER 'u'
A diferencia de las variables, sólo se puede crear una cosntante por línea de código y debe asignársele un valor al momento de definirse la misma, ya que las constantes jamás cambian su valor.
Ubicación de las variables y constantes en un programa en C
Las constantes se definen después de la inclusión de los archivos cabecera, y las variables deben ser declaradas al inicio de la función principal (main()).
Ejemplo:
//Inclusión de cabeceras
#include <stdio.h>
//Definición de constantes
#define CONSTANTE1 16
#define CONSTANTE2 20
void main()
{
            //Declaración de variables
            int variable1=123, variable2=456;
            char caracter1='a';
            float f;
}










No hay comentarios:

Publicar un comentario