CyM98

<< Incrementar Variable>>

En la mayoría de los lenguajes hay dos formas de pasar las variables a una función, por valor o por referencia. La explicación detallada junto con más ejemplos la pueden encontrar en esta página.

Vamos a ver el mismo ejemplo en cada lenguaje(QB, Pascal y C/C++). Este ejemplo es muy útil (¿?) y permite incrementar en 1 el valor de una variable sin tener que escribir +1. Para hacer esto en Pascal se puede usar Inc y en C++ se puede utilizar ++. En cada lenguaje se definen dos subrutinas aumentan en 1 el valor del parámetro que reciben. Una funciona pero la otra no.

Cosas como esta se pueden utilizar para manipular el contenido de una variable, por ejemplo sacarle los espacios de más a una cadena de texto, o dar vuelta las cifras de un número.

QB:

Defint A-Z 'Todas las variables son enteros
a=5
Print a
IncrementarVal a
Print a
IncrementarRef a
Print a
IncrementarVal a
Print a
IncrementarRef a
Print a
End

Defint A-Z 'Todas las variables son enteros
Sub IncrementarVal(x)
    CopiaX = x 'En QB no se pueden pasar Por Valor, asi que hacemos una copia
    CopiaX = CopiaX + 1
End Sub

Defint A-Z 'Todas las variables son enteros
Sub IncrementarRef(x)
    x = x 'En QB no se pueden pasar Por Valor, asi que hacemos una copia
    x = x + 1
End Sub

Pascal:

var
    a:integer;

Procedure IncrementarVal(x:integer);
begin
     x:=x+1;
End;

Procedure IncrementarRef(var x:integer);
begin
     x:=x+1;
End;

begin
    a:=5;
    Writeln(a);
    IncrementarVal(a);
    Writeln(a);
    IncrementarRef(a);
    Writeln(a);
    IncrementarVal(a);
    Writeln(a);
    IncrementarRef(a);
    Writeln(a);
End.

C/C++:

#include <iostreams.h>

void IncrementarVal(int x)
{
	x=x+1;//Perdon
};

void IncrementarRef(int &x)
{
	x=x+1;//Perdon
};

int main(void)
{
    int a;
    a=5;
    cout<<a<<"\n";
    IncrementarVal(a);
    cout<<a<<"\n";
    IncrementarRef(a);
    cout<<a<<"\n";
    IncrementarVal(a);
    cout<<a<<"\n";
    IncrementarRef(a);
    cout<<a<<"\n";
}

Lecciones relacionadas:

Parámetros por valor o por referencia Comp. Comp.

Divisor común mayor factorizando Comp. Mate. Mate.

Algoritmo de Euclides Comp. Comp. Mate. Mate.


Comentarios, preguntas, sugerencias:

Nombre y apellido (opcional):

E-mail (opcional):

    


OmaNet   Curso CyM98 OmaNet - Educación Interactiva
   
www.oma.org.ar/omanet | omanet@oma.org.ar
mensajes: webmaster@oma.org.ar
duty free alcohol duty free cigs online duty free cuban cigars buy cosmetics online duty free perfume buy duty free tobacco online