En simpel regel må være: Rekursions funktioner skal altid indeholde mindste en betingelse der søger for løkken ender. <------ Correct me if I'm wrong.
Mit lille program der illustrerer dette....
/*
1to10 - Visual C++ 2008 Express Solution
Module 5 Mastery Check #10, "C++ Beginner's Guide" by Herbert Schildt
Written by Kent S. Olsen 2008 in part of self-educational use
This program: Show a simple recursive function that print numbers 1 through 10
depending on variables, "start" and "end".
*/
#include <iostream>
using namespace std;
void count (int n, int num);
int main ( void )
{
int start = -10, end = 10;
count (start, end);
cout << "\n\n";
system("pause");
return(0);
}
void count (int n, int num)
{
if (n==num) { // Tester om det er det sidste tal i rækken
cout << n; //... recursive funktioner indeholder altid
return; //... mindst en betingelse!!!
}
cout << n << ", ";
count (n+1, num);
return;
}
Indlæg senest redigeret d. 23.08.2008 09:41 af Bruger #14086