Programación General > C/C++

 Problema - Ejercicio en C

(1/1)

ferthedems:
Buenas!
Encantado de empezar en esta comunidad. Soy estudiante de Ingenieria del Software en primer año de carrera.

Tengo que resolver el siguiente ejercicio en C; con la condición de resolverlo mediante iteraciones (for, while) y haciendo uso de la biblioteca stdio.h, nada más.

--- Citar ---Generar una serie de bucles, donde cada bucle ha de calcular la suma de los enteros j-ésimos, en donde j se encuentra entre el 2 y el 13. Comenzar cada bucle con i=2 e incrementar i en j unidades hasta que se hasta que se alcance el mayor valor posible menor que 100. EL primer bucle calculará la suma 2+4+6..., el segundo 2+5+8..., el último 2+15+28... El programa debe escribir el valor de cada suma completa.

--- Fin de la cita ---

Yo he hecho un primer intento, pero no es eficiente:

--- Código: C --- #include <stdio.h>void main(){    int i, j, suma, n1=0;     for(j=2; j>=2 && j<=13; j++)    {        for(i=0; i<100; i=i+j)        {            n1=i;            suma=n1+i;         }        printf("nPara j=%d, el valor de la suma es: %d", j, suma);        i=0;    }}  

Epa:
Buenas.

Fijate que te dicen que en cada bucle i empieza en 2, y al comienzo de cada bucle le estas asignando el valor 0.
no es necesario tener dos variables: n1 y suma, con una alcanza. pero tendrias que hacer suma = suma + i, ya que lo que necesitas es una sumatoria, y no el elemento de una serie.
al usar suma como acumulador tendrias que asignalre 0 antes de cada bucle, para que no te sume el resultado de la ultima sumatoria.

proba hacer esas modificaciones, haber si entendes el algoritmo.
calquier cosa podes hacer una tabla para los valores de j,i y suma para controlar.

saludos

ferthedems:
Muchisimas gracias, amigo EPA, he conseguido resolver el problema. No había entendido del todo bien el ejercicio desde un primer momento, y estuve durante tiempo y tiempo buscando una solución sin saber muy bien a donde iba a llegar. Ahora sí está resuelto.

Repito, muchísimas gracias.
¡Un saludo!

Navegación

[0] Índice de Mensajes

Ir a la versión completa