1)
void rozklad(int n)
który drukuje rozkład liczby na czynniki pierwsze rekurencyjnie. Wiem jak zrobić to iteracyjnie, ale za pomocą rekursji nie mam pojęcia.
2)
void ciag(int p, int r, int n)
który drukuje n-elementowy ciąg arytmetyczny o początkowym wyrazie p i różnicy r
Ten również potrafię napisać iteracyjnie, rekurencyjnie jedynie udaje mi się tak, że wyświetla się n-ty wyraz a nie wszystkie (używam funkcji int, przy void mam błąd, że nie mogę użyć operatora +).
Kod: Zaznacz cały
int ciag(int p, int r, int n)
{
if (n==1)
return p;
else
return ciag(p, r, n-1)+r;
}