> For the complete documentation index, see [llms.txt](https://educacion.gitbook.io/programacion/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://educacion.gitbook.io/programacion/ud1-introduccion-a-programacion/introducion-a-programacion/elementos-de-un-algoritmo/funcions-propias.md).

# Funcións propias

As linguaxes de programación, incluído o pseudocodigo, permiten aos usuarios crear as súas **propias funcións**. Isto ofrece unha flexibilidade enorme para adaptar a linguaxe ás necesidades específicas de cada programa.

Unha función definida polo usuario consta de tres partes fundamentais:

1. **Nome**: Un identificador único que describe a súa tarefa (ex: `calcularArea`, `verificarLogin`).
2. **Parámetros de entrada**: Unha lista (que pode estar baleira) de valores que a función recibe para traballar. Cada parámetro ten un **nome** e está asociado a un **tipo de dato** específico (ex: `numero radio`, `texto usuario`).
3. **Resultado (valor de retorno)**: O dato que a función devolve ao rematar a súa execución. Este resultado tamén está asociado a un **tipo de dato** (ex: `numero`, `lógico`).

```
Proceso prueba
	Definir nombre, pres Como Cadena;
	Escribir "Escribe tu nombre para presentarte:";
	Leer nombre;
	pres <- presentacion(nombre);
	Escribir pres;
FinProceso

Funcion res <- presentacion(nombre)
	Definir res, aux Como Cadena;
	aux <- Concatenar(nombre, ", y estoy cursando el modulo de programación");
	res<-Concatenar("Mi nombre es ", aux);
FinFuncion
```

{% hint style="warning" %}
A principal vantaxe das funcións é que permiten descompoñer un problema grande e complexo en problemas máis pequenos, simples e manexables. Esta extratexia chamase **"Divide e Vencerás"**
{% endhint %}

As funcións permiten que **un mesmo bloque de código se escriba unha soa vez** e se utilice múltiples veces, desde diferentes partes do mesmo programa ou incluso desde programas distintos. Isto evita a duplicación de código e reduce os erros.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://educacion.gitbook.io/programacion/ud1-introduccion-a-programacion/introducion-a-programacion/elementos-de-un-algoritmo/funcions-propias.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
