Programmering: Funksjonar

Ein av dei viktigaste hjelpemiddela vi har når vi skal skriva eit program er funksjonar. Ein funksjon er ei blokk med gjenbrukbar kode som er laga for eit bestemt formål. Formålet kan vera alt frå å rekna ut ein verdi, eller eit sett av verdiar, til å tegna ein graf, eller lesa inn data frå ein database. Når du oppdagar at du har behov for å gjera det same fleire stader i koden din, kan det vera lurt å laga ein funksjon. Felles for funksjonar er at dei har eit navn, dei treng å lesa inn data og dei treng å gi ut data, og dei har ei kodeblokk som gjer jobben.

Python har allerede ein funksjon som reknar ut hypotenusen i ein rettvinkla trekant. Men vi kan jo laga vår egen versjon som vi kan kalla hypotenus. Funksjonen treng å vita lengdene av dei to katetane, som vi kan kalla k1 og k2. Så det blir inndata til funksjonen. Inne i funksjonen vil vi så ha ei lita kodeblokk som bruker Pytagoras sin setning og reknar ut hypotenusen h. Så vil vi senda svaret tilbake til hovedprogrammet. Vi seier at programmet returnerer h.

Skop: I vår versjon av programmet, så vil kodeblokken oppretta ein variabel "ksum" som er summen av kvadrata av katetane. Denne variabelen er "lokal" for programmet. Det betyr at hovedprogrammer ikkje vil ha tilgang til denne variabelen. Ja, det kan tilogmed oppretta sin egen variabel "ksum" uten at denne ødelegg for for funksjonen vår.

Python


	import math	#importerer mattebibliotek for å kunna bruka sqrt()

	#Her blir funksjonen hypotenus definert. Den tar parameterane k1 og k2
	def hypotenus(k1,k2): 
		ksum = k1*k1 + k2*k2 #Dette er ein lokal variabel
		return math.sqrt(ksum) #kvadratrota av ksum blir rekna ut og returnert til hovedprogrammet.

	#Her startar hovedprogrammet
	katet1 = 3
	katet2 = 4

	#Hovedprogrammet kallar funksjonen med parameterverdiane 3 og 4
	hyp = hypotenus(katet1,katet2)
	
	#hyp har no fått verdien som er returnert frå "hypotenus"
	print("Hypotenusen er",hyp)	#Programmet skriv ut "Hypotenusen er 5.0"
	

JavaScript


	//Her blir funksjonen hypotenus definert. Den tar parameterane k1 og k2
	function hypotenus(k1, k2) {
		ksum = k1*k1 + k2*k2; //Dette er ein lokal variabel
		return Math.sqrt(ksum); //kvadratrota av ksum blir rekna ut og returnert til hovedprogrammet.
	}

	//Her startar hovedprogrammet
	katet1 = 3;
	katet2 = 4;

	//Hovedprogrammet kallar funksjonen med parameterverdiane 3 og 4
	hyp = hypotenus(katet1, katet2);

	//hyp har no fått verdien som er returnert frå "hypotenus"
	document.write("Hypotenusen er " +hyp); //Programmet skriv ut "Hypotenusen er 5"

PHP

	
	//Her blir funksjonen hypotenus definert. Den tar parameterane k1 og k2
	function hypotenus($k1,$k2){
		$ksum = $k1*$k1 + $k2*$k2;    //Dette er ein lokal variabel
		return sqrt($ksum);  //kvadratrota av ksum blir rekna ut og returnert til hovedprogrammet.
	}

	//Her startar hovedprogrammet
	$katet1 = 3;
	$katet2 = 4;

	//Hovedprogrammet kallar funksjonen med parameterverdiane 3 og 4	
	$hyp = hypotenus($katet1,$katet2);

	//hyp har no fått verdien som er returnert frå "hypotenus"
	echo "Hypotenusen er: ".$hyp; //Programmet skriv ut "Hypotenusen er 5"