0votos

suma de los elementos de un vector recursivamente en C++

por josejuan hace 4 años

En C++ podrías pasar `n` como referencia, entonces, podrías tratarla como variable (no como puntero) pero sus cambios serían "vistos" por el llamante.

el codigo ya esta hecho pero al momento de la ejecucion me da un resultado basura . ayuda por favor

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <stdio.h> 
#define N 10 
 
 
typedef int vector[N]; 
 
void llenar(vector v,int &n) { /// único cambio del original, pasar como referencia ¡sólo C++! 
    int i; 
    printf("Ingrese dimension del arreglo: "); 
    scanf("%d",&n); 
    for(i=0; i<n; i++) 
    printf("Elemento %d = ",i+1); 
    scanf("%d",&v[i]); 
 
int suma(vector v,int n) { 
    if(n == 0) 
        return(v[n]); 
    else 
        return(v[n]+suma(v,n-1)); 
 
int main(int argc, char *argv[]) { 
 
    vector v; 
    int x, aux; 
 
    llenar(v, x); 
    aux = suma(v, x); 
    printf("la suma de los elementos es %d", aux); 
 
    return 0; 
 

Comenta la solución

Tienes que identificarte para poder publicar tu comentario.