o tal vez<br>for(i=MAX_ELEMENTS;i>=0;i--)<br>   suma+=num[i];<br><br><br><div class="gmail_quote">El 5 de febrero de 2010 14:20, Steven Davidson <span dir="ltr"><<a href="mailto:srd4121@njit.edu">srd4121@njit.edu</a>></span> escribió:<br>

<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hola Pablo,<div class="im"><br>
<br>
pablo wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hola tengo el problema de que tengo un array de 10 elementos de los<br>
cuales quiero sacar la suma de todos los elementos del mismo, tengo<br>
dudas con la sintaxis, pensaba que lopodia hacer de la siguiente<br>
manera pero veo que se vuelve engorroso asi que imagino que debe<br>
haber otra forma mas sencilla.<br>
La forma que pensaba es:<br>
<br>
int num [10];<br>
int suma = (num [0] + num [1] + .... + num [9]);<br>
cout << "la suma es (num) " << endl;<br>
<br>
Espero no estar tan equivocado, agradeceria que me saquen de esta<br>
duda. Desde ya gracias!<br>
<br>
</blockquote>
<br></div>
Como puedes observar, si realizas todas las sumas explícitamente, puedes tardar una eternidad especialmente si existen miles o millones de elementos en un array. También tendrías problemas si después de escribir todo el código del programa, averiguas que la cantidad de elementos del array es incorrecta. Esto significa que tendrías que modificar el programa por lo menos la parte de la suma, y posiblmente otras partes.<br>


<br>
Cuando no puedas realizar una operación compleja en un solo instante, entonces divide el problema en varias acciones de operaciones más simples. La solución en tu caso es realizar varias sumas parciales, para obtener la suma total. La operación más simple que puedes hacer es sumar dos números. Al principio, sumamos los dos primeros números. Después podemos ir sumando la suma parcial y el siguiente número en el array. Por ejemplo,<br>


<br>
suma = num[0] + num[1];<br>
<br>
suma += num[2];<br>
suma += num[3];<br>
suma += num[4];<br>
...<br>
suma += num[9];<br>
<br>
Aquí la variable 'suma' actúa como un "acumulador", ya que va acumulando el resultado hasta que terminemos con nuestro algoritmo.<br>
<br>
Obviamente, tampoco vamos a escribir todo esto explícitamente. Sin embargo, vemos que existe un patrón. También vemos que el patrón repite varias veces. Esto implica que usaremos un bucle para llevar a cabo todas estas operaciones relacionadas.<br>


<br>
La primera suma no parece que pertenezca al patrón, pero podemos modificarla para cambiar su forma a la del patrón. En la suma, el número 0 (cero) es el elemento neutro que no la varía. Aplicamos esta propiedad aritmética sumando 0 al principio. Obtenemos lo siguiente:<br>


<br>
suma = 0;<br>
<br>
suma += num[0];<br>
suma += num[1];<br>
suma += num[2];<br>
...<br>
suma += num[9];<br>
<br>
Ahora podemos ver un patrón común a todos los elementos.<br>
<br>
<br>
Espero que este análisis aclare las dudas.<br><font color="#888888">
<br>
Steven</font><div><div></div><div class="h5"><br>
<br>
<br>
_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net" target="_blank">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br> (\__/) <br>(='.'=)This is Bunny. Copy and paste bunny into your <br>(")_(")signature to help him gain world domination. <br><br>