martes, 13 de julio de 2010

Fundamentos básicos de programación

Muchas son las personas a las que las cuesta, por ejemplo, entender qué es una variable. Y no hablemos, por supuesto, de intentar hacer operaciones aritméticas con ellas. (En cualquier lenguaje)

Por este motivo, voy a intentar escribir una entrada acorde a programadores noveles, explicando principios básicos como tipos de datos, aritmética y variables.

Variables


Imaginemos que queremos guardar varios objetos dentro de varias cajas. Después de meter cada objeto en su correspondiente caja, las vamos a ordenar por el tipo de contenido.

Ahora, una vez imaginado esto, es mas sencillo comprender qué es una variable: es un "contenedor" de datos. Como su nombre indica, es "variable" por que el contenido puede cambiar en cualquier momento. (Podemos sacar el objeto de la caja, meter otra cosa, o lo que queramos). En algunos lenguajes, es necesario indicar el tipo de datos de la variable (Indicar lo que vamos a meter en la caja) como en C, y en otros como PHP, esto no es necesario.

Tipos de datos

Los ordenadores trabajan, principalmente con 2 tipos de datos (Los mas usados para aprender), estos son Números enteros y cadenas. Un ejemplo de número entero, es 1. O 100. Y un ejemplo de cadena, "Este es el ejemplo de cadena".

Podemos observar que la cadena va entre comillas, esto es bastante usados en muchos lenguajes de programación.

Asociando esto con variables, y aplicándolo a C, podemos definir una variable con un tipo de datos (Las variables siempre hay que definirlas, indicar al programa que las vamos a usar).

Tipo_de_datos nombre variable;

int mivar; //int = entero, myvar = nombre de la variable
char micad[20]; // cadena de 20 celdas
Sintaxis de variables

Una variable siempre tiene que ser definida. También es necesario inicializar la variable con un valor (Si no, ¿Para qué quieres una variable sin valor?) Por lo cual, en cualquier punto del programa, hay que asignarle un valor. En PHP se hace así

$variable ="cadena";
$variable2 = 1234;
Como vemos, en C siempre se hace referencia a las variables con $. En C es algo distinto, pues en PHP no definimos el tipo de dato de la variable (Esto es automático). En C, lo definimos nosotros:

int variable =1;
char cad = 'a'; //Esto es un carácter, no una cadena.
Podemos hacer referencia a las variables dentro de las funciones. También existen variables globales, externas.. Pero eso, lo dejamos para alguna futura entrada.

Aritmética con variables

Podemos aplicar aritmética a las variables para operar con ellas. Después de ser declaradas, y una vez tengan valor, podemos practicar sumas, restas, multiplicaciones, divisiones, módulos, incrementos y disminuciones.

Voy a poner solo ejemplos en C, pero son fácilmente aplicables a PHP, y en general a casi cualquier otro lenguaje de programación.

/* En vez de hacer referencia a las variables por su nombre, en los comentarios las llamaré por la ultima letra, siendo A B o C */

int variableA; // Definicnos variables A, B y C
int variableB;
int variableC;

variableA =5; // Asignamos el valor entero 5 a la variable A
variableB =2;

variableC = variableA + variableB; //Variable C es igual a A+B
variableC = variableA - variableB; //Variable C es igual a A-B
variableC = variableA * variableB;
variableC = variableA / variableB;
variableC = variableA % variableB; //Variable C es igual al resto A/B

variableC ++; //Equivale a variableC = variableC +1;
variableC --; //Equivale a variableC = variableC -1;
Como vemos, el valor de variableC irá cambiando a lo largo de la ejecución del programa, adquiriendo el resultado de la operación realizada en cada caso. Creo que resulta evidente que solo podemos realizar operaciones aritméticas con valores numéricos. Con cadenas podemos hacer otras operaciones, las cuales explicaré en otra entrada (Que ya tengo planeada).

5 comentarios:

  1. [quote]char cad = "a"; //Esto es un carácter, no una cadena.[/quote]
    No, es un error de sintaxis :D (corrijo, error lógico, compilar compila), en C los caracteres se encierran entre comillas simples ' y ', así quedaría:
    char cad = 'a';
    una cadena sería:
    char *cad = "a";

    En PHP (por cierto me gustó mucho el Para Hacer Páginas), creo que no existen los caracteres (creo, ni idea), tanto 'a' como "a" es lo mismo.

    Volviendo a C, éste código es válido para el compilador, pero lo dudo que lo sea para algún programa:
    char cad = (char)"a";
    char cad2 = 'a';

    if(cad == cad2){
    printf("Ambas son iguales\n");
    }else{
    printf("Nope, no es lo mesmo\n");
    }

    ResponderEliminar
  2. Corregida la doble comilla para el carácter XD

    Gracias por los comentarios

    ResponderEliminar
  3. "Los ordenadores trabajan, principalmente con 2 tipos de datos (Los mas usados para aprender), estos son Números enteros y cadenas."

    Estoy en desacuerdo con eso :S Confunde mucho...

    ResponderEliminar
  4. ¿Por qué confunde mucho? Normalmente usamos o números o cadenas (Lo que no deja de ser o y 1 para un ordenador)

    ResponderEliminar