Difference between revisions of "Function/es"

From Free Pascal wiki
Jump to navigationJump to search
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Function}}
 
{{Function}}
== Overview ==
+
== Vision General ==
Una '''funcion''' es una declaracion de una [[Rutina|routine]] que puede ser invocada  
+
Una '''funcion''' es una declaracion de una [[Rutina|rutina]] que puede ser invocada  
* desde dentro de una [[Unidad|unit]] que la declare
+
* desde dentro de una [[Unidad|unidad]] que la declare
 
* desde afuera de una unidad si la funcion es publica,  
 
* desde afuera de una unidad si la funcion es publica,  
* o desde dentro de un [[Programa|program]]
+
* o desde dentro de un [[Programa|programa]]
  
 
La rutina devuelve un valor como parte de su definicion. Una rutina que no devuelve un valor como parte de su definicion es un ''[[Procedimiento|procedure]]''.  
 
La rutina devuelve un valor como parte de su definicion. Una rutina que no devuelve un valor como parte de su definicion es un ''[[Procedimiento|procedure]]''.  
  
Una funcion que es parte de un objeto es conocida como una [[Propiedad|property]] y puede ser asignada/devuelta como valor (si no puedes asignarle un valor, esta deberia ser un [[Metodo|method]])
+
Una funcion que es parte de un objeto es conocida como una [[Propiedad|propiedad]] y puede ser asignada/devuelta como valor (si no puedes asignarle un valor, esta deberia ser un [[Metodo|metodo]])
  
== Function  parameters ==
+
== Parametros de Funcion==
  
* Call by value
+
* Llamada por valor
* [[Variable parameter]] (call by reference)
+
* [[Parametros variables]] (llamada por referencia)
* Out parameter
+
* Parametro de salida (out)
* Const parameter
+
* Parametro constante (const)
* [[Default parameter]]
+
* [[Parametros por omision]]
* Open array parameters
+
* Arreglos abiertos de parametros
* Array of const
+
* Arreglos de constantes (const)
  
== Examples ==
+
== Ejemplos ==
Addition of two [[Integer|integer]]s example:
+
Suma de dos Enteros [[Enteros|enteros]] ejemplo:
 
+
<syntaxhighlight lang=pascal>
<syntaxhighlight>
+
  function suma(c1, c2 : integer) : integer;
  function add(c1, c2 : integer) : integer;
 
 
  begin
 
  begin
add := c1 + c2; //or use result := in Object Pascal/Delphi mode
+
  suma := c1 + c2; //o use result := in Object Pascal/Delphi mode
 
  end;
 
  end;
  
Line 33: Line 32:
  
 
  begin
 
  begin
   total := add(4, 5);
+
   total := suma(4, 5);
   writeln (total); // result is 9
+
   writeln (total); // el resultado es 9
 
  end.
 
  end.
 
</syntaxhighlight>
 
</syntaxhighlight>
 
[[category:Pascal]]
 
[[Category:Control Structures]]
 

Latest revision as of 06:22, 31 January 2020

Deutsch (de) English (en) español (es) suomi (fi) français (fr) русский (ru)

Vision General

Una funcion es una declaracion de una rutina que puede ser invocada

  • desde dentro de una unidad que la declare
  • desde afuera de una unidad si la funcion es publica,
  • o desde dentro de un programa

La rutina devuelve un valor como parte de su definicion. Una rutina que no devuelve un valor como parte de su definicion es un procedure.

Una funcion que es parte de un objeto es conocida como una propiedad y puede ser asignada/devuelta como valor (si no puedes asignarle un valor, esta deberia ser un metodo)

Parametros de Funcion

Ejemplos

Suma de dos Enteros enteros ejemplo:

 function suma(c1, c2 : integer) : integer;
 begin
   suma := c1 + c2; //o use result := in Object Pascal/Delphi mode
 end;

 var 
   total: integer;

 begin
   total := suma(4, 5);
   writeln (total); // el resultado es 9
 end.