https://pt.stackoverflow.com/q/348025/101

CSharp · Console

/Program.cs

using static System.Console;

public class Program {
    public static void Main() {
        var x = new Exemplo();
        WriteLine(x.CalculaLucro());
    }
}

public class Exemplo {
    private decimal calculaDoacao(int iteracao, decimal valor) => 0.03M * calculaLucro(iteracao, valor);
    private decimal calculaLucro(int iteracao, decimal valor) {
        if (iteracao++ == 100) return valor;
        return valor - calculaDoacao(iteracao, valor);
    }
    public decimal CalculaDoacao() => calculaDoacao(0, 10000M);
    public decimal CalculaLucro() => calculaLucro(0, 10000M);
}
;