18/03/2014, 11:42
|
| | Fecha de Ingreso: febrero-2014 Ubicación: Guadalajara
Mensajes: 34
Antigüedad: 10 años, 11 meses Puntos: 0 | |
Respuesta: una ayudita :) Cita:
Iniciado por vosk Pero si ya lo tienes, solo has de rellamar a scanf el nº de veces que te diga el primer numero.
Escribes 3 123 456 789, ejecutas scanf con un solo entero y lo guardas en el contador, luego ejecutas scanf para un solo entero el nº de veces que te dice el contador.
Por pasos, primero declaras las variables:
En contador estara el numero de valores y en numero estara cada numero leido de stdin. Ahora pides la linea de numeros:
Escribes "3 123 456 789", ahora en stdin tienes ese texto, pinchas enter y se ejecuta scanf que de stdin extrae solo la primera coincidencia con el formato, en este caso %d saca el 3 y deja en el stdin el resto ("123 456 789\n", antes de pinchar el enter el \n final aun no está).
Ahora haces el bucle:
En el primer scanf extrae 123 y deja "456 789\n", en el segundo extrae 456 y deja "789\n" y en el tercero extrae 789 y deja el \n que corresponde a la tecla enter que pinchaste antes del scanf del contador.
Suerte con eso
Saludos
vosk Cita:
Iniciado por vizen hola superchava666 veo que no tienes claro como formar el bucle, bueno simplemente repites la peticion un sumando la cantidad de veces que te indique el primer numero que te introducen, y al tiempo lo vas acumulando y ya solo tienes que mostrarlo. espero que te haya servido. un saludo ;)
Código c:
Ver original#include <stdio.h> int main(void){ int cantidad, sumando, acumulador=0; puts("\nCuantos numeros quieres sumar: "); scanf("%i",&cantidad ); // pedimos la cantidad de sumandos for(int i=1; cantidad>=i; i++){ // recogemos los sumandos y los acumulamos printf("\nIntroduce el sumando numero %i: ", i ); acumulador+=sumando; // que es igual a acumuador=acumulador + sumando; } printf("\nEl resultado de la suma es : %i \n", acumulador ); // el resultado getchar();// este absorbe el enter del scanf getchar();// este espera que introduzcas un caracter y asi ves el resultado return 0; // devuelve un cero al sistema diciendo que ha ido todo bien }
muchas gracias. ahora ya le entendi. se va ir sumando, no se mostraran los cinco numero. gracias en verdad, me resolviste mi duda. :):) |