Programación General > C/C++
Confundido con código en C
Leber:
En verdad, puedes hacer algo asi.
Imagina que tienes un array de enteros,: int numeros[100]
--- Código: C ---Bucle { Lees el numero si es 0 salimos del bucle }
Dado que necesitamos mínimo dos números, si hemos introducido menos salimos del programa.
Si no, continuamos. Entonces, podemos sumar los dos primeros números del array, [0] + [1], y a partir de ahí sumas o restas dependiendo del indice del bucle.
Dado que hemos sumado los dos primeros, el tercero se restaría, el 4 se sumaria.
Yo lo haría según el resto que de el indice del segundo bucle % 2.
Ejemplo:
--- Código: C ---indice2 < numero_total_de_numeros_entradossi indice %2 != 0 restamos el numerosi indice %2 == 0 sumamos el numero
No se si me he explicado bien, estoy algo cansado pero espero que te sirva mas o menos
Saludos
cltomas:
Lo tengo al 98% el código, solo me falla el contador de lo operandos totales menos el cero (no se cuenta) y que a veces no se sale del bucle while mientras no introduzca 2 ceros continuos <_< ..
lo he probado con estos números:
--- Código: C ---6,5,4,3,2,6,5,4,3,2,0,0,
--- Código: C ---#include <stdio.h> int main(){ int a, b, c, d; int cont = 0; int cont1 = 0; int cont2 = 0; int suma; int sum = 0; int suma2 = 0; puts("introduce 2 números"); scanf("%d %d", &a, &b); getchar(); if ((a != 0) && (b != 0)) { suma = a + b; cont = cont + 1; while ((c != 0) && (d != 0)) { puts("introduce 1 número"); scanf("%d", &c); getchar(); sum = sum + c; cont1 = cont1 + 1; puts("introduce otro número"); scanf("%d", &d); getchar(); suma2 = suma2 + d; cont2 = cont2 + 1; } printf("nSuma Total %d, Suma operandos que se Restaron %d, operandos %dn", suma - sum + suma2 ,sum, cont + cont1 + cont2); } else puts("Error!");} Me ido un poco por las ramas, pero funciona ... mas o menos... algun aporte :rolleyes:
ehecatl:
El problema no es tan dificil como crees.
Maneja todo dentro de un do-while, en la condicion del while metele justamente el que mientras no se de un valor cero lo siga ejecutando.
No olvides variables para el acumulado de la suma y resta que vayas haciendo asi como un contador para que tengas el total de numeros que has ido capturando
para saber si sumas o restas, dentro del ciclo do-while mete un if-else, if (contador % 2) suma else resta.
espero te sirva de algo la pseudo explicacion
Ehecatl
Navegación
[*] Página Anterior
Ir a la versión completa