Cześć, ostatnio zmagam się z zadaniem na temat trójkąta sierpińskiego. Problem polega na tym aby obliczyć pole tego trójkąta rekurencyjnie znając długość boku i liczbę zagnieżdżeń. Doszedłem do momentu w którym podając długość boku i liczbę zagnieżdżeń program liczby pole usuniętej części w ostatnim zagnieżdżeniu. Nie wiem jak to zrobić aby sumować usunięte pola ze wszystkich zagnieżdżeń. Liczbę na pomoc. Poniżej umieszczam swój kod.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
double pole_trojkata(double a, int n, int m)
{
if (n == 0)
return 0;
if (n == 1)
return pow(8,m)*(a * a)/9;
return pole_trojkata(a/3,n-1,m+1);
}
int main()
{
double a;
int n;
printf("Podaj dlugosc boku=");
scanf("%lf", &a);
printf("Podaj liczbe zagniezdzen=");
scanf("%d", &n);
printf("Pole usuniete=%lf", pole_trojkata(a, n, 0));
return 0;
}