Probao i radi mi.
Probao sam ponovno i ja sad - radi. Izgleda da sam nešto zapetljao. Međutim, skužio sam sad da je problematično upravo dijeljenje. I barem jedan operand (ili jedan operand kod bilo kojeg podizraza koji u konačnici sudjeluje u dijeljenju) kod dijeljenja mora biti double. Tako da u osnovi nije baš svejedno gdje ćeš raditi cast - na primjer, u originalnom ono izrazu za return već ima jedna vrijednost koja je tipa double (povratna vrijednost funkcije CN):
(((2*n)+3 )/((4*n)+7))*CN(n-1);
Možeš je castat ili zamijenit nekom decimalnom brojkom ili štoveć, no taj izraz će i dalje dati nulu. No, dovoljno je castati bilo koji operand koji će ili dio kojeg će sudjelovati u dijeljenju. Znači, već je dovoljno staviti točku iza 7, dakle da izraz bude:
(((2*n)+3 )/((4*n)+7.))*CN(n-1);
I tad radi.