• Jueves 28 de Marzo de 2024, 09:29

Autor Tema:  Resultado negativo  (Leído 903 veces)

badyalberto

  • Miembro activo
  • **
  • Mensajes: 77
    • Ver Perfil
Resultado negativo
« en: Miércoles 24 de Diciembre de 2008, 16:28 »
0
Código: Text
  1.  
  2. #include<stdio.h>
  3.  
  4. int calcul(int num1, int num2);
  5.  
  6. int main()
  7. {
  8.     int num1,num2,resol;
  9.    
  10.     printf("Programa que eleva el primer numero al segon y retorna el resultat. n");
  11.     printf("n");
  12.     printf("n");
  13.     printf("Introdueix el primero numero: n");
  14.     scanf("%d", &num1);
  15.     printf("Introdueix el segon numero: n");
  16.     scanf("%d", &num2);
  17.     resol=calcul(num1,num2);
  18.     printf("El calcul dona como a resultat: %d n", resol);
  19.     getchar();
  20.     getchar();
  21. }
  22. int calcul(int num1, int num2)
  23. {
  24.     int resol,i;
  25.    
  26.     for(i=1; i<=num2; i++)
  27.     {
  28.              resol=resol*num1;
  29.     }
  30.     return resol;
  31. }
  32.  
  33.  
  34.  

Alguien sabe pq me da resultado negativo si pongo dos numeros positivos.

Malik

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Re: Resultado negativo
« Respuesta #1 en: Miércoles 24 de Diciembre de 2008, 16:59 »
0
Da negativo porque no inicializas resol a 1. fijate que estás con variables locales, y estas no son inicializadas, conteniendo valores "basura"

Saludos

badyalberto

  • Miembro activo
  • **
  • Mensajes: 77
    • Ver Perfil
Re: Resultado negativo
« Respuesta #2 en: Miércoles 24 de Diciembre de 2008, 17:02 »
0
Ah pues si era eso, muchas gracias ^^