int isIndiceEquilibrio(int* v, int n, int indice){ int soma_infeior = somaVetor(v, 0, indice); int soma_superior = somaVetor(v, indice+1, n); return soma_superior == soma_infeior; }
int getIndiceEquilibrio(int* v, int n){ /*for(int i = 0; i < n; i++ ){ if(isIndiceEquilibrio(v, n, i)){ return i; } }*/ int soma_inferior = 0; int soma_superior = somaVetor(v, 1, n); if(soma_inferior == soma_superior){ return 0; } for(int i=1; i<n; i++){ soma_inferior += v[i-1]; soma_superior -= v[i]; if(soma_inferior == soma_superior){ return i; } } return -1; }
int somaVetor(int vetor[], int tam) { if(tam == 0) return 0; else return vetor[tam - 1] + somaVetor(vetor, tam - 1); }
main(){ int tam,i; printf("Digite a quantidade de números que serão armazenados no vetor: "); scanf("%d",&tam); int vet[tam]; printf("\n digite os valores que serão armazenados no vetor: \n"); for(i=0;i<tam;i++){ printf("valor %d: \n",i+1); scanf("%d",&vet[i]); } printf("Os valores do vetor: "); for(i=0;i<tam;i++){ printf("[%d] ",vet[i]); } printf("\nA soma dos valores: %d",somaVetor(vet,tam)); }