Avatar billede creative79 Nybegynder
20. januar 2005 - 11:32 Der er 4 kommentarer

Hvordan virker funktioner?

Hej!

Jeg er i øjeblikket i gang med at hitte ud af funktioner.

Desværre synes jeg ikke de bøger med eksempler jeg har, er særlige forståelige.

Er der nogle i dette forum der kan vise et eksempel på en forståelig funktion!

På forhånd tak!
Avatar billede medions Nybegynder
20. januar 2005 - 11:38 #1
Avatar billede soreno Praktikant
20. januar 2005 - 11:40 #2
#include <iostream>

F.eks:

using namespace std;

int max(int p, int q)
{
    if(p>=q)
    return p;
    else
    return q;
}

int main()
{
    cout << max(2, 4) << endl;
    cout << max(4, 2) << endl;
    cout << max(-2, -4) << endl;
    cout << max(-4, -2) << endl;

    return 0;
}

Output:
4
4
-2
-2
Avatar billede medions Nybegynder
20. januar 2005 - 11:49 #3
Sorry... Mit var til C# :)
- Søren har givet et godt svar...

//>Rune
Avatar billede thebigzzz Nybegynder
23. januar 2005 - 05:41 #4
Funktioner siger du? dem havde jeg også lidt problemmer med at finde ud af i starten.

her er et eksempel på en funktion:

int plus(int a, int b)
{
  int c=0; //lav en extra variabel, husk at disse kun kan bruges i funktionen.
          // Du kan ikke lave kald til dem uden for funktionen
  c=a+b; // plus a og b og gem resultatet i c
  return(c) //send c indholdet tilbage
}

de først par bogstaver er hvilken type output funktionen sender tilbage, bare skriv variabel typen du vil have funktionen til at sende tilbage.
Derefter skriv navnet som du vil give din funktion, jeg har kaldt denn funktion plus, fordi den plusser 2 tal og sender resultatet tilbage.
Inde i () skriver du de parametere du vil have funktionen til at tage, her har jeg skrevet 2 int variabler. Du kan selvfølgelig også sende objects og strings de andre variable typer.
Inde i funktionen laver jeg en variabel int til at holde resultatet. Som skrevet i code kommentarne virker diess variable kun i funktionen, du kan ikke bruge dem andre steder de er kun "lokale".
Den næste linje laver noget simpelt matmatik, den plusser a og b og gemmer resultatet i c.
Den næste linje sender c tilbage med return();

du kan bruge denne funktion sådan her:

#include <iostream>

using namespace std;

int plus(int a, int b); //dette er en prototype, som gør du kan skrive funktionen
                        // senere i din code (under int main() fx.)

int main()
{
  int resultat=0; // til at holde resultatet af funktionen

  resultat = plus(7,13); // nu holder resultat variablen 20. inde i funktionen blev
                          // 7 brugt som a, og 13 b.

  cout << resultat << endl; // skriv indholdet af resultat på skærmen

  return 0;
}

fordelen ved en funktion er at den gør man ikke skal skrive code igen og igen for de samme opgave, hvilket er ret nice :) Enjoy :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester