Napisanie funkcji rekurencyjnej

0

Dana jest funkcja zadana w sposób rekurencyjny :
M(n)= n-10 , dla n>100
M(n)=M(M(n+11)) , dla n<=100

Napisz program( w języku C), który wyświetli na ekranie wartości funkcji M dla wszystkich liczb naturalnych od 1 do 101, oddzielając wyniki przecinkami. Ktoś pomoże ?

1

Nie jest to trywialny problem, ale spróbuję Ci pomóc. Czy to całość zadania?

0

Ja bym przepisał rekurencję na kod, bo co tu można innego wymyślić.

#include <stdio.h>

int M(int n) {
	if (n < 101) {
		return M(M(n + 11));
	}
	else
		return n - 10;
}

int main() {
		for (int i = 1; i < 102; i++)
			printf("%d, ", M(i));
	return 0;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1