Recursie is een belangrijk concept op het gebied van de informatica . Een recursieve functie is er een die zich beroept , of noemt , zich op een bepaald punt . Recursie kan worden geprogrammeerd te regelen en moeilijke problemen op verrassende wijze . Bijvoorbeeld , kunt u een recursieve functie die een rechthoek trekt naar de standaard uitvoer console met behulp van de C + + taal te schrijven . Elke recursieve functie tekent een enkele lijn van de rechthoek , en dan noemt zichzelf totdat de rechthoek volledig is gevormd . Wat je nodig hebt C + + Integrated Development Environment ( IDE ) , zoals Eclipse CDT C + + Compiler , zo'n GCC Toon Meer Aanwijzingen Load 1 de C + + IDE door te klikken op het pictogram van het programma . Wanneer het wordt geopend , selecteert u " File /New /Project" en kies " C + + -project " om een nieuw project aan te maken . Een lege broncode bestand in de teksteditor gedeelte van de IDE . Kopen van 2 Schrijf de functie handtekening voor de recursieve functie . Een handtekening functie bevat de naam van de functie , het type uitvoer en het type ingang . Voor deze functie de naam " recursiveRect , " het uitvoertype " void " (met andere woorden , geen output ) en het type ingang wordt weergegeven door twee getallen . Deze getallen definiëren een huidige rij en een maximale rij . Schrijf de volgende functie signature : leegte recursiveRect ( int Currow , int maxRow ) { } Test 3 om te zien of de huidige rij ( getiteld " Currow " ) kleiner is dan de maximale rij (wat is getiteld " maxRow " ) door het plaatsen van een eenvoudige " if" in tussen de accolades van de functie " recursiveRect , " als dit : if ( Currow { } 4 < maxRow ) op Twitter Schrijf een verklaring dat drukt een reeks sterretjes tekens wanneer de " if" statement is voldaan . Plaats de volgende regel in tussen de accolades van de " if" statement in de vorige stap : cout << " ******** " << endl ; Goedkope 5 Schrijf een recursieve functie aanroep naar de functie " recursiveRect " door het plaatsen onder de verklaring in tussen de accolades van de " if" statement . Merk op dat de variabele " Currow " heeft een " + + " voorafgaan. Deze stappen van de huidige rij en maakt de volgende functie oproep naar de volgende regel in de rechthoek af recursiveRect ( + + Currow , maxRow ) ; . 6 Schrijf een return statement op de onderkant van de functie , direct na de accolades van de " if" statement : terugkeer ; 7 Maak een hoofdfunctie , vanwaar u belt , of beroepen , uw recursieve rechthoek functie int main ( ) op { recursiveRect ( 0 , 4 ) ; } . Press 8 de groene " Play " knop aan de bovenkant van de IDE . Het programma zal de recursieve functie , die vervolgens noemt zich nog drie keer lopen en bel . Het resultaat is een vier - lijn rechthoek , die er als volgt uitziet : ******** ******** ** ****** ********
|