Entrar

jueves, 9 de febrero de 2012

Declaración de variables


Declaración de variables  


Una característica del C es la necesidad de la declaración de las variables que se usarán en el programa. 

Aunque esto resulta chocante para los que se aproximan al C desde otros lenguajes de programación, es en realidad una característica muy importante y útil de C, ya que ayuda a conseguir códigos más compactos y eficaces, y contribuye a
facilitar la depuración y la detección y corrección de errores. 


Cómo se declaran las variables  

El sistema es siempre el mismo, primero se especifica el tipo y a continuación una lista de variables.  

En realidad, la declaración de variables puede considerarse como una sentencia. Desde este punto de vista, la declaración terminará con un ";". Sintaxis: 

<tipo> <lista de variables>;  

Existe una particularidad relacionada con el punto en que se declaren las variables.

Las variables declaradas dentro de una función sólo serán accesibles desde el interior de esa función, y se conocen como variables locales de la función. Las variables declaradas
fuera de las funciones, serán accesibles desde todas las funciones, y son conocidas como variables globales.  

También es posible inicializar las variables dentro de la misma declaración. 

Ejemplo:  

int a = 1234;
bool seguir = true, encontrado;

Declararía las variables "a", "seguir" y "encontrado"; y además iniciaría los valores de "a" y "seguir" a 1234 y "true", respectivamente.  

En C, contrariamente a lo que sucede con otros lenguajes de programación, las variables no inicializadas tienen un valor indeterminado, contienen lo que normalmente se
denomina "basura", también en esto hay excepciones como veremos más adelante. 


Variables o Tipos de Datos en C++

Variables o Tipos de Datos en C++

Conceptualmente, desde el punto de vista de un programador, una variable es una entidad cuyo valor puede cambiar a lo largo de la ejecución de un programa.

Una variable ocupa un espacio de memoria reservado en el ordenador para contener sus valores durante la ejecución de un programa. Cada variable debe pertenecer a un tipo determinado, y ese tipo determina, por una parte, el tamaño del espacio de memoria ocupado por la variable, y por otra, el modo en que se manipulará esa memoria por el ordenador.

No olvides, si es que ya lo sabías, que la información en el interior de la memoria del ordenador se almacena siempre de forma binaria, al menos a bajo nivel. El modo en que se interpreta la información almacenada en la memoria de un ordenador es, en cierto modo, arbitraria; es decir, el mismo valor puede codificar una letra, un número, una instrucción de programa, etc. 

No hay nada diferente en una posición de memoria que contenga una instrucción de programa o una letra de un texto; si observamos una posición de memoria cualquiera, no habrá modo de saber qué significa el valor que contiene. 

Es mediante el tipo como le decimos al compilador el modo en que debe interpretarse y manipularse cierta información binaria almacenada en la memoria de un ordenador.

De momento sólo veremos los tipos fundamentales, que son: void, char, int, float y double, en C++ se incluye también el tipo bool.





La Sintaxis

La Sintaxis

En C++, la sintaxis se puede dar en diferentes combinaciones tanto con el tipo de variable, como con los modificadores, normalmente los modificadores son poco usados (me refiero a short, long, signed y unsigned) pero de igual forma en algún momento podrían ser útiles.
De este modo, la sintaxis para una variable es la siguiente: [modificadores] [tipo de variable] [nombre de la variable];
En la declaración de una variable se debe colocar como nimino el tipo, el nombre y el punto y coma, los modificadores son opcionales, es decir no es necesario ponerlos, si no se pone ningún modificador, el compilador tomara nuestra variable como signed, es decir podría ser positivo o negativo.


En el momento de asignar un nombre a una variable se deben seguir algunas normas:

1. El nombre de una variable nunca debe comenzar con un numero.

2. No debes incluir algunos caracteres como símbolos matemáticos, guiones (el guión bajo"_" si es permitido), comas, punto y coma, comillas, signos de interrogación o espacios en blanco.

3. Deben tener un máximo de 40 caracteres
También, hay algunas palabras que son reservadas del lenguaje, es decir tus variables no podrán tener estos nombre (no creo que tengas problemas con esto, especialmente si escribe en español). 

Las palabras son las siguientes:

auto const double float
int short struct unsigned
break continue else for
long signed switch void
case default enum goto
register sizeof typedef volatile
char do extern if
return static union while


Algunos ejemplos de nombres correctos:

Fecha
Nacimiento
variable12
nombre_variable
contador
ACUMULADOR


TIPOS FUNDAMENTALES DE DATOS EN C++


TIPOS DE DATOS FUNDAMENTALES EN C+++

En C sólo existen cinco tipos fundamentales y los tipos enumerados, C++ añade un septimo tipo, el bool, y el resto de los tipos son derivados de ellos.


La definiciones de sintaxis de C++ se escribirán usando el color verde. Los valores entre [] son opcionales, los valores separados con | indican que sólo debe escogerse uno de los valores.
Los valores entre <> indican que debe escribirse obligatoriamente un texto que se usará como el concepto que se escribe en su interior.  [signed|unsigned] char <identificador> significa que se puede usar signed o unsigned, o ninguna de las dos, ya que ambas están entre []. Además debe escribirse un texto, que debe ser una única palabra que actuará como identificador o nombre de la
variable. 
Este identificador lo usaremos para referirnos a la variable durante el programa.


signed char Cuenta
unsigned char letras
char caracter


Tipo "char" o carácter:  

[signed|unsigned] char <identificador>


Es el tipo básico alfanumérico, es decir que puede contener una carácter, un dígito numérico o un signo de puntuación. Desde el punto de vista del ordenador, todos esos valores son caracteres. En C y C++ éste tipo siempre contiene un único carácter del código ASCII. 


El tamaño de memoria es de 1 byte u octeto. Hay que notar que en C un carácter es tratado en todo como un número, de hecho puede ser declarado con y sin signo. Y si no se especifica el modificador de signo, se asume que es con signo. 
Este tipo de variables es apto para almacenar números pequeños, como los dedos que tiene una persona, o letras, como la inicial de mi nombre de pila.  



Tipo "int" o entero:  

[signed|unsigned] [short|long] int <identificador>
[signed|unsigned] long [int] <identificador>
[signed|unsigned] short [int] <identificador>


Las variables enteras almacenan números enteros dentro de los límites de su tamaño, a su vez, ese tamaño depende de la plataforma del compilador, y del número de bits que use por palabra de memoria: 8, 16, 23... 
No hay reglas fijas para saber el mayor número que podemos almacenar en cada tipo: int, long int o short int; depende en
gran medida del compilador y del ordenador.
Sólo podemos estar seguros de que ese número en short int es menor o igual que en int, y éste a su vez es menor o igual que en long int. Este tipo de variables es útil para almacenar números relativamente grandes, pero sin decimales, por ejemplo el dinero que tienes en el banco, salvo que seas Bill Gates, o el número de lentejas que hay en un kilo de lentejas.  


Tipo "float" o coma flotante:  

float <identificador>


Las variables de este tipo almacenan números en formato de coma flotante, mantisa y exponente, para entendernos, son números con decimales. Son aptos para variables de tipo real, como por ejemplo el cambio entre euros y pesetas. O para números muy grandes, como la producción mundial de trigo, contada en granos. 
El fuerte de estos números no es la precisión, sino el orden de magnitud, es decir lo grande o pequeño que es el número que contiene.


 Por ejemplo, la siguiente cadena de operaciones no
dará el resultado correcto: 


float a = 12335545621232154;
a=a+1;
a=a-12335545621232154;


Finalmente, "a" valdrá 0 y no 1, como sería de esperar. Los formatos en coma flotante sacrifican precisión en favor de tamaño. Si embargo el ejemplo si funcionaría con números más pequeños. Esto hace que las variables de tipo float no sean muy adecuadas para los bucles.


Tipo "bool" o Booleana: 


bool <identificador>


Las variables de este tipo sólo pueden tomar dos valores "true" o "false". Sirven para evaluar expresiones lógicas. 
Este tipo de variables se puede usar para almacenar
respuestas, por ejemplo: ¿Posees carné de conducir?. O para almacenar informaciones que sólo pueden tomar dos valores, por ejemplo: qué mano usas para escribir.


En estos casos debemos acuñar una regla, en este ejemplo, podría ser diestro->"true", zurdo->"false".  


Tipo "double" o coma flotante de doble precisión:  


[long] double <identificador>


Las variables de este tipo almacenan números en formato de coma flotante, mantisa y exponente, al igual que float, pero usan mayor precisión. Son aptos para variables de
tipo real. Usaremos estas variables cuando trabajemos con números grandes, pero también necesitemos gran precisión.


En el compilador Dev-C++ float requiere 4 bytes, double 8 y
long double 12, por lo tanto, para manejar un número en formato de long double se requiere el triple de memoria y el triple o más tiempo de procesador que para manejar
un float. 

Tipo "void" o sin tipo:  


void <identificador>


Es un tipo especial que indica la ausencia de tipo. Se usa en funciones que no devuelven ningún valor, también en funciones que no requieren parámetros, aunque
este uso sólo es obligatorio en C, y opcional en C++, también se usará en la declaración de punteros genéricos.


Las funciones que no devuelven valores parecen una contradicción. En lenguajes como Pascal, estas funciones se llaman procedimientos. Simplemente hacen su trabajo, y no revuelven valores. Por ejemplo, funciones como borrar la pantalla, no tienen nada que devolver, hacen su trabajo y regresan. 
Lo mismo se aplica a funciones sin parámetros de entrada, el mismo ejemplo de la función para borrar la pantalla, no requiere ninguna entrada para poder hacer su cometido.



Tipo "enum" o enumerado: 


enum [<identificador de tipo>] {<nombre de constante> [= <valor>],
...} [lista de variables];


Este tipo nos permite definir conjuntos de constantes, normalmente de tipo int, llamados datos de tipo enumerado. Las variables declaradas de este tipo sólo podrán tomar valores entre los definidos. 
El identificador de tipo es opcional, y nos permitirá declarar más variables del tipo enumerado en otras partes del programa: 


[enum] <identificador de tipo> <variable1> [,<variable2>[...]];


La lista de variables también es opcional. Sin embargo, al menos uno de los dos componentes opcionales debe aparecer en la definición del tipo enumerado. 


Varios identificadores pueden tomar el mismo valor, pero cada identificador sólo puede usarse en un tipo enumerado. 


Por ejemplo: 


enum tipohoras { una=1, dos, tres, cuatro, cinco, seis,
siete, ocho, nueve, diez, once, doce,
trece=1, catorce, quince, dieciseis, diecisiete, dieciocho,
diecinueve, veinte, ventiuna, ventidos, ventitres, venticuatro =
0};


En este caso, una y trece valen 1, dos y catorce valen 2, etc. Y veinticuatro vale 0.
Como se ve en el ejemplo, una vez se asigna un valor a un elemento de la lista, los siguientes toman valores correlativos. Si no se asigna ningún valor, el primer
elemento tomará el valor 0. 
Los nombres de las constantes pueden utilizarse en el programa, pero no pueden ser leídos ni escritos.





¿QUÉ ES EL LENGUAJE DE PROGRAMACIÓN DEV C++?

LENGUAJE DE PROGRAMACIÓN DEV ++


C++ es un lenguaje de programación diseñad o a mediados de los años 1980 por Bjarne Stroustrup.
C++ es una mejoría sobre muchas de las carac terísticas de C, y proporciona capacidades de P.O.O. que promete mucho para incrementar la productividad, calidad y reutilización del software.En C, la unidad de programación es la función, con lo cuál, se trata de una programación orientada a la acción.
En C++, la unidad de programación es la clase a partir de la cuál, los objetos son producidos. Se trata, pues, de una programación orientada al objeto.

Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.El nombre C++ fue propuesto por
Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C++.






ESTRUCTURA PRINCIPAL DE C++

¿Qué es la programación orientada a objetos?

En la programación estructurada todos los programas tienen las estructuras
secuencial, repetitiva o condicional.
Tambien se utilizan los TAD (Tipos Abstractos de
Datos) 


 Por ejemplo una pila o un arbol.

typdef struct{
int x,y;
int color;
}punto;
struct punto a,b;



Luego se implementan las funciones de este TAD (pila_vacia, pila_llena).
En C++ se definen los TAD y las funciones o procedimientos y datos dentro de un
mismo conjunto llamado class (clase).En el ejemplo, el
equivalente en C de la class de C++ y las variables atypedef struct punto seria el y b de los objetos en C++


Ejemplo:

count <<" HOLA MUNDO C++<< endl;
count <<"COMÓ ESTAN"<< endl;
count <<"VOY A SUMAR NÚMEROS:";
cin>> "b;
count<<"LA SUMA DE LOS NÚMEROS ES: "<< a+b<<endl;
system ("PAUSE");
restun exit_success;




ESTRUCTURA DE UN PROGRAMA

ESTRUCTURA

Consta de módulos interrelacionados
Programación módular
En conjunto resuelven un problema
                                               MÓDULO

                       FUNCIONES                       CLASES 
      
                                                               
La función principal  main()
Desde aqui se ejecutan todas las funciones.
Es la función controladora
No puede aver mas de una función main.

Seguidores