It looks like you're new here. If you want to get involved, click one of these buttons!

- 140.5K All Categories
- 103.4K Programming Languages
- 6.4K Assembler Developer
- 1.9K Basic
- 39.9K C and C++
- 2.9K C#
- 7.9K Delphi and Kylix
- 4 Haskell
- 9.6K Java
- 4.1K Pascal
- 1.3K Perl
- 2K PHP
- 527 Python
- 37 Ruby
- 4.4K VB.NET
- 1.6K VBA
- 20.8K Visual Basic
- 2.6K Game programming
- 313 Console programming
- 90 DirectX Game dev
- 1 Minecraft
- 110 Newbie Game Programmers
- 2 Oculus Rift
- 9K Applications
- 1.8K Computer Graphics
- 733 Computer Hardware
- 3.5K Database & SQL
- 535 Electronics development
- 1.6K Matlab
- 628 Sound & Music
- 257 XML Development
- 3.3K Classifieds
- 198 Co-operative Projects
- 192 For sale
- 190 FreeLance Software City
- 1.9K Jobs Available
- 602 Jobs Wanted
- 203 Wanted
- 2.9K Microsoft .NET
- 1.7K ASP.NET
- 1.1K .NET General
- 3.4K Miscellaneous
- 6 Join the Team
- 0 User Profiles
- 354 Comments on this site
- 68 Computer Emulators
- 2.1K General programming
- 187 New programming languages
- 615 Off topic board
- 179 Mobile & Wireless
- 53 Android
- 124 Palm Pilot
- 335 Multimedia
- 151 Demo programming
- 184 MP3 programming
- 0 Bash scripts
- 22 Cloud Computing
- 53 FreeBSD
- 1.7K LINUX programming
- 370 MS-DOS
- 0 Shell scripting
- 320 Windows CE & Pocket PC
- 4.1K Windows programming
- 919 Software Development
- 411 Algorithms
- 68 Object Orientation
- 89 Project Management
- 93 Quality & Testing
- 257 Security
- 7.6K WEB-Development
- 1.8K Active Server Pages
- 61 AJAX
- 2 Bootstrap Themes
- 55 CGI Development
- 19 ColdFusion
- 224 Flash development
- 1.4K HTML & WEB-Design
- 1.4K Internet Development
- 2.2K JavaScript
- 35 JQuery
- 295 WEB Servers
- 133 WEB-Services / SOAP

Can someone tell me if on the net exists any site or tutorial that explains these recursive procedures or functions.

Thanks

Terms of use / Privacy statement / Publisher: Lars Hagelin

Programmers Heaven articles / Programmers Heaven files / Programmers Heaven uploaded content / Programmers Heaven C Sharp ebook / Operated by CommunityHeaven

© 1997-2015 Programmersheaven.com - All rights reserved.

## Comments

117: Can someone tell me if on the net exists any site or tutorial that explains these recursive procedures or functions.

: Thanks

:

hi recursive??

757: Can someone tell me if on the net exists any site or tutorial that explains these recursive procedures or functions.

: Thanks

Recursive functions are pretty easy to understand, but very confusing to use. Basically, you make a procedure that calls itself. This is done to accomplish things that would otherwise take alot of coding.

An example of recursive procedure is a FILL procedure in graphics or an equation such as the "Towers of Hanoi" (complicated ancient Monk problem)

Here is a basic recursive function:

[code]

FUNCTION Recursion(X : Word) : Word;

Begin

If X < 10 Then

Recursion := Recursion(X+1);

WriteLn('Recursion Function #',X);

End;

Begin

Recursion(1);

End.

[/code]

If you were to run this, you would have the following steps taken:

[01] Recursion(1) is called

[02] X(=01) < 10 Then Recursion := Recursion(X+1) is called;

[03] X(=02) < 10 Then Recursion := Recursion(X+1) is called;

[...]

[08] X(=07) < 10 Then Recursion := Recursion(X+1) is called;

[09] X(=08) < 10 Then Recursion := Recursion(X+1) is called;

[10] X(=09) < 10 Then Recursion := Recursion(X+1) is called;

[11] X(=10) is not < 10, so WriteLn('Recursion Function #',X);

[12] Exit Function and return to point where function was called

[13] X(=09)WriteLn('Recursion Function #',X);

[14] Exit Function and return to point where function was called

[15] X(=08)WriteLn('Recursion Function #',X);

[...]

[26] Exit Function and return to point where function was called

[27] X(=02)WriteLn('Recursion Function #',X);

[28] Exit Function and return to point where function was called

[29] X(=01)WriteLn('Recursion Function #',X);

[30] Done!

Your output would be:

[code]

Recursion Function #10

Recursion Function #9

Recursion Function #8

Recursion Function #7

Recursion Function #6

Recursion Function #5

Recursion Function #4

Recursion Function #3

Recursion Function #2

Recursion Function #1

[/code]

Hope this explains it a bit.

Phat Nat