Fråga : Den C# referens-parametern ifrågasätter? Hur till appellen en metod som har referens-parameter recursively?

Hälsningar den pröva förmiddagen för

I att beräkna fibonacci numrerar recursively och kalla computeFibonacciRecursive (fiben för ref); från huvudsakligt.
However, I-förmiddag som får fel från
return computeFibonacciRecursive (ref n - 1) + computeFibonacciRecursive (ref n - 2); felet för
The är: referens för

A eller ut argumentet måste vara en assignable variable

How som fixar detta fel? Behaga programet för help.



class {utan laga kraft huvudsakligt för
static (stränga [] args) {fib för
int = 20;
computeFibonacci (referens-fib); Console.WriteLine (fib);
fib = 20;
computeFibonacciRecursive (fib för ref); Console.WriteLine (fib);
{
för int för privat statisk elektricitet för

för
} computeFibonacciRecursive (ref int n) om (n-<= 1)
{
återgångt n; else
{återgångt computeFibonacciRecursive för
för
} för
(ref n - 1) + computeFibonacciRecursive (ref n - 2);  // <------
{
int för computeFibonacci för int för statisk elektricitet för

private för
} för
} (referens int n) a = 1, b = 1;
för (int i = 3; i <= n;
{
int för i++) c = a + b;
a = b;
b = c;
Console.WriteLine (”b-is=” + b);
återgångt b för
};
för

för
}} " klar "

Svar : Den C# referens-parametern ifrågasätter? Hur till appellen en metod som har referens-parameter recursively?

du behöver inte ”referensen”, därför att du som går redan en värdera tillbaka…,
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
klassificera programet
    {
        utan laga kraft huvudsakligt för statisk elektricitet (stränga [] args),
        {
            int-fib = 20;
            fib = computeFibonacci (fib); Console.WriteLine (fib);
            fib = 20;
            fib = computeFibonacciRecursive (fiben); Console.WriteLine (fib);
        }

        computeFibonacciRecursive privat statisk elektricitet int (int n)
        {
            om (n  <>
           
Andra lösningar  
 
programming4us programming4us