🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: be.comp.programming
6 messages
6 total messages Started by Christian Wed, 05 Feb 2003 20:53
Recursie en VB
#5839
Author: Christian
Date: Wed, 05 Feb 2003 20:53
28 lines
1685 bytes
Dag iedereen,

Ik bestudeer de Recursie in Visual Basic.
Kan er mij aub iemand uitleggen wat het stuk "Terug(intbedrag - 500)" in de
code doet.
Zijn er personen die goede websites kennen in verband met dit onderwerp,
liefst in het Nederlands?
Alvast bedankt,

Christian.

    Function Terug(ByVal intbedrag As Integer) As String

        Dim strTerug As String

        If intbedrag >= 500 Then

            strTerug = "500 " & Terug(intbedrag - 500)

        ElseIf intbedrag >= 200 Then

            strTerug = "200 " & Terug(intbedrag - 200)

        End If

        Return strTerug

    End Function
Re: Recursie en VB
#5841
Author: KrIstOfK
Date: Wed, 05 Feb 2003 22:13
38 lines
1958 bytes
"Christian" <Christian.Rosseel@pandora.be> schreef in bericht
news:vRe0a.32695$Jd.4400@afrodite.telenet-ops.be...
> Dag iedereen,
>
> Ik bestudeer de Recursie in Visual Basic.
> Kan er mij aub iemand uitleggen wat het stuk "Terug(intbedrag - 500)" in
de
> code doet.
> Zijn er personen die goede websites kennen in verband met dit onderwerp,
> liefst in het Nederlands?
> Alvast bedankt,
>
> Christian.
>
>     Function Terug(ByVal intbedrag As Integer) As String
>
>         Dim strTerug As String
>
>         If intbedrag >= 500 Then
>
>             strTerug = "500 " & Terug(intbedrag - 500)
>
>         ElseIf intbedrag >= 200 Then
>
>             strTerug = "200 " & Terug(intbedrag - 200)
>
>         End If
>
>         Return strTerug
>
>     End Function
>
>

niet echt site gevonden, heb je fantastische uitleg gemaild.

KrIstOfK
Re: Recursie en VB
#5842
Author: Ben Turner
Date: Wed, 05 Feb 2003 23:40
14 lines
1486 bytes
"KrIstOfK" <NO.SPAM.dementdevil@hotmail.com> wrote in message
news:b1s2c3$9lr$1@reader10.wxs.nl...

> niet echt site gevonden, heb je fantastische uitleg gemaild.
>
> KrIstOfK

misschien handig dat je volgende keer hier post zodat anderen die het ook
niet zouden weten ook kunnen meelezen.

groetjes

Ben
Re: Recursie en VB
#5847
Author: Obsession
Date: Thu, 06 Feb 2003 11:25
6 lines
1400 bytes
> > niet echt site gevonden, heb je fantastische uitleg gemaild.
>
> misschien handig dat je volgende keer hier post zodat anderen die het ook
> niet zouden weten ook kunnen meelezen.

Ik ben zo iemand dat het ook graag had willen lezen :)
Re: Recursie en VB
#5854
Author: KLinZ
Date: Thu, 06 Feb 2003 18:58
14 lines
1724 bytes
Obsession wrote:
>>> niet echt site gevonden, heb je fantastische uitleg gemaild.
>>
>> misschien handig dat je volgende keer hier post zodat anderen die
>> het ook niet zouden weten ook kunnen meelezen.
>
> Ik ben zo iemand dat het ook graag had willen lezen :)

Zie dan de thread met hetzelfde subject in nl.comp.programmeren (msg-id:
_Re0a.32699$Jd.4397@afrodite.telenet-ops.be ). Die nederlanders weten toch
ook met alles raad :-)

--
www.zenobits.com
Re: Recursie en VB
#5856
Author: KrIstOfK
Date: Thu, 06 Feb 2003 19:34
74 lines
4014 bytes
ok�, was eigenlijk wel bedoeld om hier te posten, maar na verzenden te duwen
had ik gemerkt dat het op mail was beland dus nu op algemeen verzoek zal ik
het hier dan ook maar posten, wist niet dat er zoveel liefhebbers zouden
zijn :-)

KrIstOfK
[Belgium ruless]

------------

Hey,

ik zal het je regel per regel uitleggen:

   Function Terug(ByVal intbedrag As Integer) As String
Je roept de functie Terug() op en je geeft een bedrag intbedrag mee, als
resultaat krijg je een string

    Dim strTerug As String
Je declareert een variabele strTerug waarin je een waarde zal steken die je
later zal teruggeven

    If intbedrag >= 500 Then
Je start een ALS-formule waarin je een voorwaarde gaat stellen.  De
voorwaarde is dus: ALS het meegegeven bedrag kleiner of gelijk aan 500 is,
dan gaat het de volgende code uitvoeren, anders gaan we naar de ELSE

      strTerug = "500 " & Terug(intbedrag - 500)
De variabele strTerug die daarnet gedeclareerd is gaan we nu opvullen (omdat
we aan de voorwaarde van daarnet voldoen).  In de variabelegaan we als tekst
500 zetten met daarachter nog iets.  Dit nog iets bestaat uit het volgende:
van het binnengekomen bedrag (dat groter is dan 500) gaan we 500 aftrekken
en met dit getal deze functie opnieuw doorlopen.

    ElseIf intbedrag >= 200 Then
Als het getal nu niet groter of gelijk aan 500 is, gaan we hier kijken of
het groter of gelijk aan 200 is.

       strTerug = "200 " & Terug(intbedrag - 200)
Hier gaan we dan de string opvullen als 200 en het resultaat van dezelfde
functie nog eens maar dan met het getal verminderd met 200.

    Return strTerug
De string teruggeven (naar de oproepende functie)

   End Function
einde van het plezier

'k zal nu ook keer een voorbeeldje geven want 'k kan mij voorstellen dat nog
ni echt duidelijk is :-)

ik roep dus de functie op met het getal 850: Terug(850)

- If intbedrag >= 500 is waar dus we gaan dat uitvoeren:
  strTerug wordt dus: 500 & Terug(850-500)
    - If intbedrag >= 500 is niet meer waar dus gaan we naar de ElseIf
      ElseIf intbedrag >= 200 is wel waar dus dit uitvoeren:
        deze strTerug wordt: 200 & Terug(350-200)
        - If intbedrag >= 500 niet waar, naar de ElseIf
          ElseIf intbedrag >= 200 ook niet waar, er is geen verdere else dus
einde van if
          teruggeven van deze string (waar niets inzit)
        we komen terug bij 200 & Terug(350-200)
        die functie heeft een lege string weergegeven zodat deze string het
volgend wordt:
        strTerug = 200, deze word teruggeven
   terug bij 500 & Terug(850-500)
   die functie gaf de string 200 terug
   dus deze string word: 500 200
DUS ons eindresultaat word: "500 200"


Hoop dat je het snapt met deze superuitleg
KrIstOfK
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads