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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


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

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Ayuda do-while
« en: 25 Agosto 2016, 19:29 pm »

Hola a todos, buenos días,

El código siguiente:
Código
  1. int M, N, Com;
  2.    do
  3.    {
  4.        printf("\nIngrese el primer numero entero (mayor o igual a 0): \n\n");
  5.        scanf("%d",&N);
  6.        printf("\nIngrese el segundo numero entero (mayor que el primero): \n\n");
  7.        scanf("%d",&M);
  8.    }
  9.    while(N<0 || M<N);
  10.  

Me permite ingresar las dos variables pero luego el cursor se queda frió y no continua el programa.

Si pudieran brindarme su ayuda, estaría muy agradecido.

Saludos!

MOD EDIT: etiquetas GeSHi


« Última modificación: 25 Agosto 2016, 21:07 pm por MCKSys Argentina » En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Ayuda do-while
« Respuesta #1 en: 25 Agosto 2016, 19:56 pm »

No debería dar ningún problema. ¿Qué tienes después? ¿Te aseguraste de que el código que va después es correcto?


En línea

palacio29

Desconectado Desconectado

Mensajes: 103


Ver Perfil
Re: Ayuda do-while
« Respuesta #2 en: 26 Agosto 2016, 03:38 am »

Porque quizas no tenes mas codigo que ese?... :rolleyes:
Si vos cargas las 2 variables despues el programa no va a hacer nada..por lo que vemos tu codigo esta bien pero faltaria ver el resto.
En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.696


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Ayuda do-while
« Respuesta #3 en: 26 Agosto 2016, 14:57 pm »

Tal vez tiene un

Código
  1. system("pause");

Saludos
En línea

NicolasPileci

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Re: Ayuda do-while
« Respuesta #4 en: 26 Agosto 2016, 15:29 pm »

Estimado, adjunto el código completo:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int CalcularCombinatoria (int, int);
  4. int CalcularFactorial (int);
  5.  
  6. int main()
  7. {
  8.    system ("color 0a");
  9.    int M, N, Com;
  10.    do
  11.    {
  12.        printf("\nIngrese dos numeros enteros (el 1ro mayor 0 igual a 0 y el segundo mayor o igual al primero):\n\n");
  13.        scanf("%d%d",&N,&M);
  14.    }
  15.    while(N<0 || M<N);
  16.    Com = CalcularCombinatoria(N, M);
  17.    printf("\t\tLa combinatoria de %d y %d es: %d.",N,M,Com);
  18.    return 0;
  19. }
  20.  
  21. int CalcularCombinatoria(int N, int M)
  22. {
  23.    int A, B;
  24.    A = CalcularFactorial(N);
  25.    B = CalcularFactorial(M);
  26.    C = (B / (A * (B - A)));
  27.    return C;
  28. }
  29.  
  30. int CalcularFactorial (int Num)
  31. {
  32.    int i, Pro=1;
  33.    for(i=2;i=Num;i++)
  34.    {
  35.        Pro = i;
  36.    }
  37.    return Pro;
  38. }

La idea del programa es efectuar la combinatoria de dos numeros.

Gracias!

MOD EDIT: Etiquetas GeSHi por segunda vez.
« Última modificación: 26 Agosto 2016, 18:54 pm por MCKSys Argentina » En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Ayuda do-while
« Respuesta #5 en: 26 Agosto 2016, 15:44 pm »

Código
  1. int CalcularFactorial (int Num)
  2. {
  3.    int i, Pro=1;
  4.    for(i=2;i=Num;i++)
  5.    {
  6.        Pro = i;
  7.    }
  8.    return Pro;
  9. }
  10.  
Querrás poner "i <= Num".
En línea

NicolasPileci

Desconectado Desconectado

Mensajes: 32



Ver Perfil
Re: Ayuda do-while
« Respuesta #6 en: 31 Agosto 2016, 20:55 pm »

Hola, buen día,

El código me permite ingresar los datos, pero no calcula la combinatoria.

Gracias!
En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.696


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Ayuda do-while
« Respuesta #7 en: 31 Agosto 2016, 21:02 pm »

Tu codigo de combinatoria tiene detalles:

Tu codigo..
Código
  1. int CalcularFactorial (int Num)
  2. {
  3.    int i, Pro=1;
  4.    for(i=2;i=Num;i++)
  5.    {
  6.        Pro = i;
  7.    }
  8.    return Pro;
  9. }

Problema numero uno el = deberia de ser <=

Código
  1.    for(i=2;i<=Num;i++)

Ahora esta linea:
Código
  1.        Pro = i;

Por se iguala a i y ya? deberia de ser += no?

Código
  1.        Pro += i;

Entonces debes de tener que:

Código
  1. int CalcularFactorial (int Num)
  2. {
  3.    int i, Pro=1;
  4.    for(i=2;i<=Num;i++)
  5.    {
  6.        Pro += i;
  7.    }
  8.    return Pro;
  9. }


Ahora ten en cuentra los limites de los datos si tu numero Num es muy grande va a tardar mucho en completar las iteraciones y ademas ten en cuenta los limites de 2^31 y 2^32 de los numeros enteres sin signo y con signo respectivamente.

Saludos!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines