Funktioner #
En funktion er en sammenhæng mellem to fænomener.
"Når det er koldt, så løber Alfreds næse."
Med andre ord er snot i Alfreds næse en funktion af det kolde vejr.
Beskrivelsen ovenfor er en funktion beskrevet i et naturligt sprog (dansk).
Funktioner i matematik #
En matematisk funktion er en afbildning af elementer i en definitionsmængde over på elementer i en værdimængde.
Definitionsmængder og værdimængder er talmængder.
Matematiske funktioner er restringeret af de tilladte værdier for definitionsmængde og værdimængde.
Restriktion betyder, at man begrænser valgmulighederne for dataværdier i funktionen.
Matematiske funktioner har desuden en forskrift, som definerer funktionen.
Inden for matematik (på matematiksprog) er det sædvanligt at angive definitions-, værdimængder og funktionsforskrifter på denne måde:
\(f: ℝ → ℝ f(x) = 2x + 3\)
Computerfunktioner #
En funktion i computeren er en transformation af input data til output data.
Funktionens forskrift kaldes en definition.
En computerfunktion defineres ved hjælp af et programmeringssprog.
Computerfunktioner er restringeret af datatyperne for input og output data.
Funktioner har bĂĄde et navn og en datatype.
Funktionens datatype er kombinationen af typen af input og typen af output.
Funktionsdefinitioner skrives forskelligt afhængigt af computersproget. I JavaScript bruges meget lidt udtrykkelig typeinformation og man kan definere en funktion på denne måde:
function f(x) {
let y = 2 * x + 3;
return y;
}
I eksemplet er typen af output typen af f(x) og typen af input er typen af x.
For at finde typen af f(x)
finder man return
-sætningen:
Hvis typen af input x
er et tal, sĂĄ mĂĄ typen af udtrykket 2 * x + 3
forventes at være et tal.
I eksemplet er det underforstĂĄet, at x og f(x) har typen tal.