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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda  (Leído 3,496 veces)
Nicoloreido

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« en: 18 Febrero 2015, 01:47 am »

Código:


#include <stdio.h>
#include <stdlib.h>

int main (){
   
    int menu,opcion,a,b,x,y,z=0;
   
   
     
   
printf ("Seleccione el cero (0) para el primer menu\n ");
printf ("Seleccione el seis (6) para el segundo menu\n\n ");
printf ("0-Primer Menu\n\n6-Segundo Menu\n\n");
 scanf ("%d",&menu);
 
   
   
     if (menu==0) {
                 
                 
printf ("\nHA SELECCIONADO EL PRIMER MENU\n\n ");
printf ("Seleccione el numero de la operacion que quiere hacer\n\n ");
printf ("Ejemplo: Si selecciona el uno (1) los dos valors que escriba se van a sumar\n\n ");                             
printf ("Menu de Opciones\n\n 1-Suma \n 2-Resta \n 3-Multiplicacion \n 4-Division\n ");
printf ("\nSeleccione Una Opcion\n\n "); scanf ("%d",&opcion);


}

if (opcion==1){
             

             printf ("\nHa Seleccionado Suma\n\n ");
             
printf ("Escribe el primer valor "); scanf ("%d",&x);     
printf ("Escribe el segundo valor "); scanf ("%d",&y);
z= x+y;
printf ("\n%d + %d = %d ",x,y,z);       
}


 else if (opcion==2){
             
              printf ("\nHa Seleccionado Resta\n\n ");
             
printf ("Escribe el primer valor "); scanf ("%d",&x);     
printf ("Escribe el segundo valor "); scanf ("%d",&y);
z= x-y;
printf ("\n%d - %d = %d ",x,y,z);       
}     

else  if (opcion==3){
       
        printf ("\nHa Seleccionado Multiplicacion\n\n ");
       
printf ("Escribe el primer valor "); scanf ("%d",&x);     
printf ("Escribe el segundo valor "); scanf ("%d",&y);
z= x*y;
printf ("\n%d * %d = %d ",x,y,z);       
}

else if (opcion==4){
     
      printf ("\nHa Seleccionado Division\n\n ");
     
printf ("Escribe el primer valor "); scanf ("%d",&x);     
printf ("Escribe el segundo valor "); scanf ("%d",&y);
z= x/y;
printf ("\n%d / %d = %d ",x,y,z);       
}

else if (menu==6){
       
     
printf ("HA SELECCIONADO EL SEGUNDO MENU\n\n ");
 
printf ("Escriba el primer valor "); scanf ("%d",&a);
printf ("Escriba el segundo valor "); scanf ("%d",&b);
}


 if (a>b)  {                           
         
printf ("\nEl Mayor es %d ",a);
printf ("\nEl Menor es %d ",b);       
}



 else  if (a<b) {
 
printf ("\n El Mayor es %d \n",b);
printf ("\n El Menor es %d \n",a);     
}


else {
     printf ("\nSon Iguales \n ");
     }
     

 
     system ("pause ");
     }


   



En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #1 en: 18 Febrero 2015, 03:30 am »

explica tu error con detalle, porque no entiendo...


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Nicoloreido

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #2 en: 18 Febrero 2015, 15:43 pm »

Si corres el programa veras que si seleccionas el primer menu, sea cual sea la operación que hayas escogido, te da el resultado, pero debajo del resultado me sale: El mayor es 59, el menor es 2, no se porque, y no debería de salir
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #3 en: 18 Febrero 2015, 16:25 pm »

ya... porque en prime menú cargas las variables "x", "y" y "z", pero nunca "a" y "b", y como no inicializas ninguna variable a demás de "z" la operacion muestra basura de la memoria....
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Nicoloreido

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #4 en: 18 Febrero 2015, 20:18 pm »

Yo no se mucha programación, estoy aprendiendo y no entiendo lo que me dices, como resuelvo el problema, en español por favor ;D
En línea

T. Collins

Desconectado Desconectado

Mensajes: 206


Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #5 en: 18 Febrero 2015, 20:25 pm »

Código
  1. if (a>b)  {                            
  2.  
  3. printf ("\nEl Mayor es %d ",a);
  4. printf ("\nEl Menor es %d ",b);      
  5. }
  6.  
  7.  
  8.  
  9. else  if (a<b) {
  10.  
  11. printf ("\n El Mayor es %d \n",b);
  12. printf ("\n El Menor es %d \n",a);      
  13. }
  14.  
  15.  
  16. else {
  17.     printf ("\nSon Iguales \n ");
  18.     }

Mete esa parte del código dentro de:

Código
  1. else if (menu==6){
  2.  
  3. }
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #6 en: 18 Febrero 2015, 20:38 pm »

si no sabes de programación, como hiciste el código? :s no te dije nada raro, te dije que no estás usando bien las variables XD

te recomiendo sentarte y leer bien lo que haces y te dicen :P
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Nicoloreido

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #7 en: 18 Febrero 2015, 20:54 pm »

Gracias, pero sigo con el mismo problema, solo que ahora pone números diferentes, y si que me he sentado, y revisado, y como dije estoy aprendiendo, aun así espero poder resolver el problema
En línea

T. Collins

Desconectado Desconectado

Mensajes: 206


Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #8 en: 18 Febrero 2015, 21:09 pm »

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main (){
  5.  
  6.    int menu,opcion,a,b,x,y,z=0;
  7.  
  8.  
  9.  
  10.  
  11. printf ("Seleccione el cero (0) para el primer menu\n ");
  12. printf ("Seleccione el seis (6) para el segundo menu\n\n ");
  13. printf ("0-Primer Menu\n\n6-Segundo Menu\n\n");
  14. scanf ("%d",&menu);
  15.  
  16.  
  17.  
  18.     if (menu==0) {
  19.  
  20.  
  21. printf ("\nHA SELECCIONADO EL PRIMER MENU\n\n ");
  22. printf ("Seleccione el numero de la operacion que quiere hacer\n\n ");
  23. printf ("Ejemplo: Si selecciona el uno (1) los dos valors que escriba se van a sumar\n\n ");                            
  24. printf ("Menu de Opciones\n\n 1-Suma \n 2-Resta \n 3-Multiplicacion \n 4-Division\n ");
  25. printf ("\nSeleccione Una Opcion\n\n "); scanf ("%d",&opcion);
  26.  
  27.  
  28. }
  29.  
  30. if (opcion==1){
  31.  
  32.  
  33.             printf ("\nHa Seleccionado Suma\n\n ");
  34.  
  35. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  36. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  37. z= x+y;
  38. printf ("\n%d + %d = %d ",x,y,z);      
  39. }
  40.  
  41.  
  42. else if (opcion==2){
  43.  
  44.              printf ("\nHa Seleccionado Resta\n\n ");
  45.  
  46. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  47. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  48. z= x-y;
  49. printf ("\n%d - %d = %d ",x,y,z);      
  50. }    
  51.  
  52. else  if (opcion==3){
  53.  
  54.        printf ("\nHa Seleccionado Multiplicacion\n\n ");
  55.  
  56. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  57. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  58. z= x*y;
  59. printf ("\n%d * %d = %d ",x,y,z);      
  60. }
  61.  
  62. else if (opcion==4){
  63.  
  64.      printf ("\nHa Seleccionado Division\n\n ");
  65.  
  66. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  67. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  68. z= x/y;
  69. printf ("\n%d / %d = %d ",x,y,z);      
  70. }
  71.  
  72. else if (menu==6){
  73.  
  74.  
  75. printf ("HA SELECCIONADO EL SEGUNDO MENU\n\n ");
  76.  
  77. printf ("Escriba el primer valor "); scanf ("%d",&a);
  78. printf ("Escriba el segundo valor "); scanf ("%d",&b);
  79.  
  80. if (a>b)  {                            
  81.  
  82. printf ("\nEl Mayor es %d ",a);
  83. printf ("\nEl Menor es %d ",b);      
  84. }
  85.  
  86.  
  87.  
  88. else  if (a<b) {
  89.  
  90. printf ("\n El Mayor es %d \n",b);
  91. printf ("\n El Menor es %d \n",a);      
  92. }
  93.  
  94.  
  95. else {
  96.     printf ("\nSon Iguales \n ");
  97.     }
  98. }
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.     system ("pause ");
  106.     }
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Me imprime: El mayor es 59, el menor es 2, en 1er menu no se porque, ayuda
« Respuesta #9 en: 18 Febrero 2015, 21:12 pm »

mira tus variables

Código
  1. int menu,opcion,a,b,x,y,z=0;

tienes 7 variables y solo "z" está inicializada (se le dio valor inicial), el resto contienen "basura" que había en esas posiciones de la ram...

tu proceso lee e imprime en el primer menú del 1 al 4 "x",  "y" y "z"

Código
  1. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  2. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  3. //----------------//
  4. printf ("\n%d + %d = %d ",x,y,z);  


fijate las anidaciones (los if dentro de if) el identarlos (darle tantos espacios a la izquierda como adentro estén) ayuda a identificar el codigo... te doy el tuyo arreglado

mira tu codigo

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main (){
  5.  
  6. int menu,opcion,a,b,x,y,z=0;
  7.  
  8. printf ("Seleccione el cero (0) para el primer menu\n ");
  9. printf ("Seleccione el seis (6) para el segundo menu\n\n ");
  10. printf ("0-Primer Menu\n\n6-Segundo Menu\n\n");
  11. scanf ("%d",&menu);
  12.  
  13. if (menu==0) {
  14. printf ("\nHA SELECCIONADO EL PRIMER MENU\n\n ");
  15. printf ("Seleccione el numero de la operacion que quiere hacer\n\n ");
  16. printf ("Ejemplo: Si selecciona el uno (1) los dos valors que escriba se van a sumar\n\n ");                            
  17. printf ("Menu de Opciones\n\n 1-Suma \n 2-Resta \n 3-Multiplicacion \n 4-Division\n ");
  18. printf ("\nSeleccione Una Opcion\n\n "); scanf ("%d",&opcion);
  19. }
  20. if (opcion==1){
  21. printf ("\nHa Seleccionado Suma\n\n ");
  22. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  23. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  24. z= x+y;
  25. printf ("\n%d + %d = %d ",x,y,z);      
  26. }
  27. else if (opcion==2){
  28. printf ("\nHa Seleccionado Resta\n\n ");
  29. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  30. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  31. z= x-y;
  32. printf ("\n%d - %d = %d ",x,y,z);      
  33. }    
  34. else  if (opcion==3){
  35. printf ("\nHa Seleccionado Multiplicacion\n\n ");
  36. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  37. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  38. z= x*y;
  39. printf ("\n%d * %d = %d ",x,y,z);      
  40. }
  41. else if (opcion==4){
  42. printf ("\nHa Seleccionado Division\n\n ");
  43. printf ("Escribe el primer valor "); scanf ("%d",&x);    
  44. printf ("Escribe el segundo valor "); scanf ("%d",&y);
  45. z= x/y;
  46. printf ("\n%d / %d = %d ",x,y,z);      
  47. }
  48. else if (menu==6){
  49. printf ("HA SELECCIONADO EL SEGUNDO MENU\n\n ");
  50. printf ("Escriba el primer valor "); scanf ("%d",&a);
  51. printf ("Escriba el segundo valor "); scanf ("%d",&b);
  52. }
  53. if (a>b)  {                            
  54. printf ("\nEl Mayor es %d ",a);
  55. printf ("\nEl Menor es %d ",b);      
  56. }
  57. else  if (a<b) {
  58. printf ("\n El Mayor es %d \n",b);
  59. printf ("\n El Menor es %d \n",a);      
  60. }
  61. else {
  62. printf ("\nSon Iguales \n ");
  63. }
  64. system ("pause ");
  65. }
  66.  

desde la linea 56 debería estar dentro del opcion 6
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
programa en vb (ordenar de mayor a menor)
Programación Visual Basic
jjam45 1 9,547 Último mensaje 19 Febrero 2006, 18:36 pm
por jjam45
Ordenar número de mayor a menor « 1 2 »
Programación Visual Basic
Nessito 14 16,240 Último mensaje 19 Mayo 2007, 20:09 pm
por Nessito
Arreglar vector de menor a mayor?
Java
monsefoster 6 11,917 Último mensaje 12 Noviembre 2009, 05:12 am
por monsefoster
ayuda compañeros! programa c ordenar mayor a menor « 1 2 »
Programación C/C++
shikidos 11 11,574 Último mensaje 19 Enero 2015, 05:41 am
por engel lex
Ayuda en Sacar la nota mayor y menor
Programación C/C++
warnercito1996 3 2,135 Último mensaje 10 Marzo 2018, 23:11 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines