elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con For en C.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con For en C.  (Leído 2,234 veces)
FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Problema con For en C.
« en: 8 Diciembre 2010, 17:16 pm »

Hola chicos, estoy empezando con C, C normal. Quiero hacer un mini programa que calcule potencias utilizando un bucle for. Ya sé que hay comandos en otras bibliotecas pero es que ahora quiero hacerlo con for. Tengo un código como este.

Código
  1. #include <stdio.h>
  2. #include <conio.h>
  3.  
  4. int main() {
  5.    int base, exp;
  6.    printf("Escriba la base:  ");
  7.    scanf ("%i", &base);
  8.    printf ("\nEscriba el exponente: ");
  9.    scanf ("%i", &exp);
  10.    printf ("Elevamos %i a la %i¦ potencia\n", base, exp);
  11.  
  12.    int cnt = 1;
  13.    int res;
  14.    int reslt;
  15.  
  16.    for ( res=2 ; cnt==exp ; res++, cnt++ )
  17.    {
  18.    res = res * base;
  19.    }
  20.    printf ("El resultado es %i.", res);
  21.    return 0;
  22. }

¿Por qué no me da la respuesta correcta? Cuando elevo 2² o 2³ me sale que el resultado es 2. ¿Dónde está el fallo? Muchas gracias.


« Última modificación: 8 Diciembre 2010, 17:18 pm por Novlucker » En línea

bomba1990


Desconectado Desconectado

Mensajes: 395



Ver Perfil WWW
Re: Problema con For en C.
« Respuesta #1 en: 8 Diciembre 2010, 17:50 pm »

Código
  1. #include <stdio.h>
  2. #include <conio.h>
  3.  
  4. int main() {
  5.    int base, exp;
  6.    printf("Escriba la base:  ");
  7.    scanf ("%i", &base);
  8.    printf ("\nEscriba el exponente: ");
  9.    scanf ("%i", &exp);
  10.    printf ("Elevamos %i a la %i&#166; potencia\n", base, exp);
  11.  
  12.    int reslt = 1;
  13.  
  14.    for ( int i = 0 ; i<exp ; i++)
  15.    {
  16.        reslt *= base;
  17.    }
  18.    printf ("El resultado es %i.", reslt);
  19.    return 0;
  20. }

aqui lo acomode

te estabas enredadando imprimiendo res y creo que tenias que imprimir era reslt, y ademas el programa se va a ejecutar mientras la segunda condicion del bucle sea verdadera. y si comparas == a menos que siempre sean iguales no se va a a ejecutar.

pd: este es mi mensaje 200. jeje:D


« Última modificación: 8 Diciembre 2010, 17:55 pm por bomba1990 » En línea

"Cuando le di de comer a los pobres me llamaron santo, pero cuando pregunte porque los pobres eran pobres me dijeron comunista"

http://sosinformatico.blogspot.com/
http://www.publisnet.com.ve
FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: Problema con For en C.
« Respuesta #2 en: 8 Diciembre 2010, 17:56 pm »

¡La leche! Funciona, gracias. Nop sé si lo he pillado bien ¿
Sólo se puede usar a partir de la "i" en for?. Bueno, es igual. Lod el reslt era una errata. Gracias por resolver mi duda.
En línea

JuszR


Desconectado Desconectado

Mensajes: 2.866


Programming & RI


Ver Perfil
Re: Problema con For en C.
« Respuesta #3 en: 8 Diciembre 2010, 21:42 pm »

Sólo se puede usar a partir de la "i" en for?.
¿A qué te refireres?
En el for puedes usar cualquier variable pero generalmente se usa una letra (a, b, c, i...).
En línea

- No programming language is perfect. There is not even a single best language; there are only languages well suited or perhaps poorly suited for particular purposes. [Herbert Mayer]
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema BlueZScanner y problema de conexión
Hacking Mobile
Kasswed 3 6,313 Último mensaje 6 Mayo 2006, 22:04 pm
por Gospel
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines