Foros del Web » Programación para mayores de 30 ;) » C/C++ »

[SOLUCIONADO] problema con ejercicio

Estas en el tema de problema con ejercicio en el foro de C/C++ en Foros del Web. Hola que tal , estoy haciando un curso de programacion en c por youtube el cual el crador del canal deja ejercicios y las soluciones ...
  #1 (permalink)  
Antiguo 06/05/2016, 08:05
 
Fecha de Ingreso: octubre-2015
Mensajes: 17
Antigüedad: 9 años, 1 mes
Puntos: 0
problema con ejercicio

Hola que tal , estoy haciando un curso de programacion en c por youtube el cual el crador del canal deja ejercicios y las soluciones y tengo un problema que no logro darme cuenta que es lo que esta mal

Ejercicio oroginal "la solucion"
Código:
#include<stdio.h>

int main(){
	int numero,suma, mult,i;
	
	printf("Digite un numero: ");scanf("%i",&numero);
		
	i = 1;
	if(numero>10){
		while(i<=10){
			mult=mult*i;
			i++;
		}
		printf("\n La multiplicacion es: %i",mult);
	}
	else{
		while(i<=10){
			suma=suma+i;
			i++;
		}
		printf("\n La suma es: %i",suma);
	}
	
	return 0;
}
Mi codigo
Código:
#include<stdio.h>

int main(){  // Nivel 3 ej 2
	
	int i = 1 , suma  , multi   , num;
	
	printf("Ingrese un numero : ");
	scanf("%i",&num);
	
	if(num > 10){
			
		while(i <= 10){	
			
	    	multi *= i;
	     	i++;
		}
		
    printf("La multiplicacion es : %i\n",multi);
		
	}else {
			
		while(i <= 10){	
			
	    	suma += i;
		    i++;
		
		}
	
	printf("La suma es : %i\n",suma);
	
	}

	return 0;
}
El error que me da es que al sumar ej 9 en mi codigo da como resultado 164 y el la solucion da 191 y en la multiplicacion en mi codigo al digitar 11 da resultado 0 y el la solucion da 493516800 , si alguien me puede explicar que susede se los agradecere un monton , desde ya gracias.
  #2 (permalink)  
Antiguo 06/05/2016, 12:44
 
Fecha de Ingreso: octubre-2015
Mensajes: 17
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: problema con ejercicio

Gracias a todas las personas que pasaron por este tema y no dieron una solucion :D es bueno saber que hay buenos programadores aca :D ya fuera de la ironia ya lo solucione despues de ponerme a hacer otras cosa me llego la solucion del mas alla :D , asi que tema solucionado :)
  #3 (permalink)  
Antiguo 06/05/2016, 12:48
 
Fecha de Ingreso: enero-2014
Mensajes: 60
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: problema con ejercicio

hola ekis,

en los dos programas veo que operas con variables sin que tengan un valor concreto, por lo que tanto suma como mult o multi tienen el valor que el compilador le quiera dar

ademas nesita para que de el resultado que dices, necesitas inicializar suma a 109 e inicializar mult o multi a 136, como te digo en los dos programas que has puesto.

suerte
  #4 (permalink)  
Antiguo 06/05/2016, 12:58
 
Fecha de Ingreso: enero-2014
Mensajes: 60
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: problema con ejercicio

hola ekis

en la respuesta de suma mire la que te dio a ti y no la que debia de darte, para que de 191 hay que inicializar suma como mult a 136

pero si se que eres tan impaciente y condescendiente con los compañeros del foro, desde luego no te mando ninguna respuesta, la proxima vez no cuentes conmigo

suerte
  #5 (permalink)  
Antiguo 06/05/2016, 14:00
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 10 años, 1 mes
Puntos: 204
Respuesta: problema con ejercicio

Cita:
Iniciado por vizen Ver Mensaje
por lo que tanto suma como mult o multi tienen el valor que el compilador le quiera dar
Una corrección respecto a esa afirmación. El valor no lo elige el compilador sino que es el valor que tuviese la memoria en esa posición. Ese valor pudo haberlo almacenado algún programa anterior (o incluso tu propio programa) o pueden ser valores aleatorios generados al darle corriente a la memoria.
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.

Etiquetas: ejercicio, int, numero, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:22.