Day_2

1435 단어
다음은 반복에 대한 예입니다.
귀환은 간단한 1부터 n까지 화해를 구하는 예를 찾았다. 귀환은 결과가 빨리 나올 때마다 pc지침을 창고에 저장하고 자신이 같은 일을 이어받는 것을 호출하는 것이다. 단지 매개 변수가 변했을 뿐이다. 즉, 중복된 함수 조작이다. 차지하는 메모리는 순환보다 크지만 쓰기는 간단하다.어제 쓴find 검색 함수도 귀속 형식으로 쓸 수 있습니다. 아래와 같습니다.
귀속되는 몇 가지 기본 준칙:
1) 기준 상황이 하나 있는데 반드시 기준 상황이 있어야 한다. 그렇지 않으면 귀속을 사용할 수 없다!
2) 끊임없이 추진한다. 귀속 구해를 받아야 하는 상황에 대해 귀속 호출은 반드시 하나의 기준 상황을 향해 추진할 수 있어야 한다!  
3) 설계법칙은 자신의 귀속이 각 상황에서 정확하다는 것을 증명한다.
void printOut(int n)
{
    if(n >= 10)
        printOut( n/10 );
    cout << (n % 10) << endl;
}

     
#include "main.h"
#include <iostream>
#include <cstdlib>
#include <assert.h>
using namespace std;
int calculate(int m)
{
    // Inlet parameters judgemant
    if(m < 0)
        return -1;
    if( m == 0)
        return 0;
    else
        return calculate(m-1) + m;
}

template<typename type>
int _find(type index, type array[], type length, type value)
{
    if( NULL == array || length == 0 )
        return -1;
    if( value == array[index])
        return index;
    return _find( index + 1, array, length, value );
}

void test()
{
    int array[10] = {1, 2, 3, 4};
    assert(3 == _find<int>(0, array, 10, 4));
}
int main()
{
    int sum;
    sum = calculate(10);
    cout << "sum: " << sum  << endl;
    test();
    return 0;
}

좋은 웹페이지 즐겨찾기