Advertisement
Guest User

Untitled

a guest
Feb 5th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.67 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int vett[50];
  4. int i, dim, somma;
  5.  
  6. int somma_ricorsiva(int vett[], int dim)
  7. {
  8. int pivot, somma1 = 0, somma2 = 0;
  9. // Caso degenere
  10. if (dim == 0)
  11. {
  12. return vett[0];
  13. }
  14. // Caso base
  15. if (dim == 1)
  16. {
  17. return vett[0];
  18. }
  19. pivot = dim / 2;
  20. somma1 = somma_ricorsiva(vett, pivot);
  21. somma2 = somma_ricorsiva(&vett[pivot], dim - pivot);
  22. return somma1 + somma2;
  23. }
  24.  
  25. int main ()
  26. {
  27. printf("Quanti elementi vuoi sommare? ");
  28. scanf("%d", &dim);
  29.  
  30. for (i = 0; i < dim; i++)
  31. {
  32. printf("Inserisci un numoer: ");
  33. scanf("%d", &vett[i]);
  34. }
  35. somma = somma_ricorsiva(vett, dim);
  36. printf("La somma degli elementi: %d", somma);
  37. return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement