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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Que esta mal en este codigo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Que esta mal en este codigo  (Leído 6,020 veces)
mr.blood

Desconectado Desconectado

Mensajes: 150


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #10 en: 16 Abril 2013, 18:14 pm »

Animo!
Un consejo, las variables decláralas dentro de main, no fuera, ya entenderás por qué.

Y en vez de pedir los números en cada if, los pides antes de los if y te ahorras lineas.

Solo tendrías que implementar un "control de errores" por si introducen una letra que no sea válida.

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6. char a;
  7.  
  8. int uno;
  9. int dos;
  10.  
  11. cout<<"(S)Suma (R)Resta (M)Multiplicacion (D)Division\n\n";
  12. cin>>a;
  13. if(a!='r' && a!='R' && a!='s' && a!='S' && a!='d' && a!='D' && a!='m' && a!='M')
  14. {
  15. cout<<"Ingresa una opcion valida\n";
  16. return 1;
  17. }
  18. cout<<"Ingresa un numero\n\n";
  19. cin >>uno;
  20. cout<<"Ingresa otro numero\n\n";
  21. cin >>dos;
  22. if(a == 's'||a == 'S')
  23. {
  24. cout<<"Total Suma = \n"<< uno + dos ;
  25. }
  26. else if(a == 'r'||a == 'R')
  27. {
  28. cout<<"Total Resta = \n"<< uno - dos ;
  29. }
  30. else if(a == 'm'|| a == 'M')
  31. {
  32. cout<<"Total Multiplicacion = \n"<< uno * dos ;
  33. }
  34. else if(a == 'd'||a == 'D')
  35. {
  36. cout<<"Total Division = \n"<< uno / dos ;
  37. }
  38. return 0;
  39. }
  40.  

Sa1uDoS


« Última modificación: 16 Abril 2013, 19:04 pm por mr.blood » En línea

Daniel_Ruiz

Desconectado Desconectado

Mensajes: 28



Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #11 en: 16 Abril 2013, 18:17 pm »

Animo!
Un consejo, las variables decláralas dentro de main, no fuera, ya entenderás por qué.

Y en vez de pedir los números en cada if, los pides antes de los if y te ahorras lineas.

Solo tendrías que implementar un "control de errores" por si introducen una letra que no sea válida.

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6. char a;
  7.  
  8. int uno;
  9. int dos;
  10.  
  11. cout<<"(S)Suma (R)Resta (M)Multiplicacion (D)Division\n\n";
  12. if(a!='r' && a!='R' && a!='s' && a!='S' && a!='d' && a!='D' && a!='m' && a!='M')
  13. {
  14. cout<<"Ingresa una opcion valida\n";
  15. return 1;
  16. }
  17. cin>>a;
  18. cout<<"Ingresa un numero\n\n";
  19. cin >>uno;
  20. cout<<"Ingresa otro numero\n\n";
  21. cin >>dos;
  22. if(a == 's'||a == 'S')
  23. {
  24. cout<<"Total Suma = \n"<< uno + dos ;
  25. }
  26. else if(a == 'r'||a == 'R')
  27. {
  28. cout<<"Total Resta = \n"<< uno - dos ;
  29. }
  30. else if(a == 'm'|| a == 'M')
  31. {
  32. cout<<"Total Multiplicacion = \n"<< uno * dos ;
  33. }
  34. else if(a == 'd'||a == 'D')
  35. {
  36. cout<<"Total Division = \n"<< uno / dos ;
  37. }
  38. return 0;
  39. }
  40.  

Sa1uDoS

Vale gracias Anotado y Listo ya use las etiquetas Ponganme una Tare haber si la puedo hacer :P


En línea

Importante


Bueno Necesito de su ayuda estoy montando una microempresa, Y estoy reuniendo Quemadoras de Dvd - Cd , Soy de Colombia Bogota si quieres apoyarme enviame un Mp Por Favor!.
amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #12 en: 16 Abril 2013, 19:00 pm »

Código
  1.  
  2. cout<<"(S)Suma (R)Resta (M)Multiplicacion (D)Division\n\n";
  3. if(a!='r' && a!='R' && a!='s' && a!='S' && a!='d' && a!='D' && a!='m' && a!='M')
  4. {
  5. cout<<"Ingresa una opcion valida\n";
  6. return 1;
  7. }
  8. cin>>a;

Esto... No deberías hacer la comprobación después de introducir los datos?
« Última modificación: 16 Abril 2013, 19:13 pm por amchacon » En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
mr.blood

Desconectado Desconectado

Mensajes: 150


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #13 en: 16 Abril 2013, 19:03 pm »

Esto... No deberías hacer la comprobación después de introducir los datos?

EPIC FAIL! jajaja

Lo edite a toda prisa en el propio post y ni me di cuenta, buena vista ;). EDITADO.

Sa1uDoS
En línea

Daniel_Ruiz

Desconectado Desconectado

Mensajes: 28



Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #14 en: 16 Abril 2013, 19:14 pm »

Bueno miren hice este pequeño programa dice la fecha en formato dia mes año

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. main()
  6. {
  7.  
  8. int dia;
  9. int mes;
  10. int ao;
  11.  
  12. cout<<"Ingrese El dia : ";
  13. cin>>dia;
  14. cout<<"Ingrese El Mes : ";
  15. cin>>mes;
  16. cout<<"Ingrese El Año : ";
  17. cin>>ao;
  18. if(mes == 1)
  19. {
  20. cout<<"Dia:"<<dia<<" Mes: Enero"<<" ano:"<<ao;
  21.  
  22. }
  23. else if(mes == 2)
  24. {
  25. cout<<"Dia:"<<dia<<" Mes: Febrero"<<" ano:"<<ao;
  26.  
  27. }
  28. else if(mes == 3)
  29. {
  30. cout<<"Dia:"<<dia<<" Mes: Marzo"<<" ano:"<<ao;
  31.  
  32. }
  33. else if(mes == 4)
  34. {
  35. cout<<"Dia:"<<dia<<" Mes: Abril"<<" ano:"<<ao;
  36.  
  37. }
  38. else if(mes == 5)
  39. {
  40. cout<<"Dia:"<<dia<<" Mes: Mayo"<<" ano:"<<ao;
  41.  
  42. }
  43. else if(mes == 6)
  44. {
  45. cout<<"Dia:"<<dia<<" Mes: Junio"<<" ano:"<<ao;
  46.  
  47. }
  48. else if(mes == 7)
  49. {
  50. cout<<"Dia:"<<dia<<" Mes: Julio"<<" ano:"<<ao;
  51.  
  52. }
  53. else if(mes == 8)
  54. {
  55. cout<<"Dia:"<<dia<<" Mes: Agosto"<<" ano:"<<ao;
  56.  
  57. }
  58. else if(mes == 9)
  59. {
  60. cout<<"Dia:"<<dia<<" Mes: Septiembre"<<" ano:"<<ao;
  61.  
  62. }
  63. else if(mes == 10)
  64. {
  65. cout<<"Dia:"<<dia<<" Mes: Octubre"<<" ano:"<<ao;
  66.  
  67. }
  68. else if(mes == 11)
  69. {
  70. cout<<"Dia:"<<dia<<" Mes: Noviembre"<<" ano:"<<ao;
  71.  
  72. }
  73. else if(mes == 12)
  74. {
  75. cout<<"Dia:"<<dia<<" Mes: Diciembre"<<" ano:"<<ao;
  76.  
  77. }
  78. else
  79. {
  80.  
  81. cout<<"No ingresaste el Mes Correcto Max 12!";
  82.  
  83. }
  84.  
  85.  
  86. return 0;
  87. }

Y me gustaria hacer este pero no se como :s

Ejercicio 308
Realizar un programa que permita elegir el formato (windows o linux) y permita escribir un determinado texto de cualquier tamaño y guardarlo en un archivo ascii con el formato especificado llamado c:\texto.txt.
Los archivos de texto windows tienen como marcador de final de línea la secuencia CR (retorno de carro ascii=13) y LF (line feed ascii=10). Los de Linux solo tienen LF.
« Última modificación: 16 Abril 2013, 19:16 pm por Daniel_Ruiz » En línea

Importante


Bueno Necesito de su ayuda estoy montando una microempresa, Y estoy reuniendo Quemadoras de Dvd - Cd , Soy de Colombia Bogota si quieres apoyarme enviame un Mp Por Favor!.
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #15 en: 16 Abril 2013, 19:36 pm »

EPIC FAIL! jajaja

Lo edite a toda prisa en el propio post y ni me di cuenta, buena vista ;). EDITADO.

Sa1uDoS

Y además darle la opción a que ingrese otro valor en lugar de "cerrarle" el programa:

Código
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7. char a;
  8. int uno,dos;
  9.    cout<<"(S)Suma (R)Resta (M)Multiplicacion (D)Division\n\n";
  10. cin>>a;
  11.    while(a!='r' && a!='R' && a!='s' && a!='S' && a!='d' && a!='D' && a!='m' && a!='M')
  12. {
  13. cout<<"Ingresa una opcion valida\n";
  14. cin>>a;
  15. }
  16. cout<<"Ingresa un numero\n\n";
  17. cin >>uno;
  18. cout<<"Ingresa otro numero\n\n";
  19. cin >>dos;
  20. if(a == 's'||a == 'S')
  21. {
  22. cout<<"Total Suma = "<< uno + dos ;
  23. }
  24. else if(a == 'r'||a == 'R')
  25. {
  26. cout<<"Total Resta = "<< uno - dos ;
  27. }
  28. else if(a == 'm'|| a == 'M')
  29. {
  30. cout<<"Total Multiplicacion = "<< uno * dos ;
  31. }
  32. else if(a == 'd'||a == 'D')
  33. {
  34. cout<<"Total Division = "<< uno / dos ;
  35. }
  36. return EXIT_SUCCESS;
  37. }
  38.  

Saluditos!. ...
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #16 en: 16 Abril 2013, 20:04 pm »

Bueno miren hice este pequeño programa dice la fecha en formato dia mes año


Bien, aunque un poco largo.

Antes de meterte en ficheros te aconsejo practiques con bucles, switch y arrays.

Por ejemplo tu código de día, mes y año podrías abreviarlo con el uso de array:


Código
  1. #include <iostream>
  2. #include<clocale>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.    setlocale(LC_ALL, "Spanish");
  8.    char Mes [12][11]={"ENERO","FEBRERO","MARZO","ABRIL","MAYO","JUNIO","JULIO","AGOSTO","SEPTIEMBRE","OCTUBRE","NOVIEMBRE","DICIEMBRE"};
  9. int dia;
  10. int mes;
  11. int ao;
  12.  
  13. cout<<"Ingrese El día : ";
  14. cin>>dia;
  15. cout<<"Ingrese El Mes : ";
  16. cin>>mes;
  17. cout<<"Ingrese El Año : ";
  18. cin>>ao;
  19.  
  20. cout<<"Día:"<<dia<<" Mes: "<<Mes [mes-1]<<" año:"<<ao;
  21.  
  22.  
  23. return 0;
  24. }
  25.  

Ya sé que es simple, no implemento condiciones de verificación de día y mes, pero es como un simple ejemplo de uso de un array.

Por cierto, te falto "int" antes de main, ten en cuenta que retorna cero, luego main es una función de tipo int, así a lo simple.

Y el uso de la librería clocale y luego lo de "spanish" es para que en lo que se va a imprimir salgan los caracteres hispanos en lugar de símbolos raros. Permite el uso de acentos y de la "ñ", eso sí ¡cuidado¡ porque usa como caracter para los decimales la coma en lugar del punto que es más anglosajón.

Y lo dicho, mi consejo es que te centres en lo que vas viendo hasta ahora, los ficheros ya tendrán su momento.

Saluditos!. ....


P.D: Sorry por no haber editado el anterior post y meter este. He metido la pata  >:D
« Última modificación: 16 Abril 2013, 20:09 pm por leosansan » En línea

mr.blood

Desconectado Desconectado

Mensajes: 150


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #17 en: 16 Abril 2013, 20:06 pm »

Para que no hagas tantos if.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. char listameses[][11]={"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"};
  6. int dia, mes, anio;
  7.  
  8. puts("Introduce un dia: ");
  9. scanf("%i", &dia);
  10. puts("Introduce un mes: ");
  11. scanf("%i", &mes);
  12. puts("Introduce un anio: ");
  13. scanf("%i", &anio);
  14. /* Puedes saltarte el siguiente control de errores */
  15. if(mes>12 || dia<1 || ((mes<6 && mes%2==1) && dia>31) || ((mes<6 && mes%2==0 && mes!=2) && dia>30) || (mes==2 && dia>28 && anio%4!=0) || (mes==2 && dia>29 && anio%4==0) || ((mes>6 && mes%2==0) && dia>31) || ((mes>6 && mes%2==1) && dia>31))
  16. {
  17. puts("Introduce los datos correctamente\n");
  18. return 1;
  19. }
  20. printf("%i de %s de %i\n", dia, listameses[mes-1], anio);
  21. return 0;
  22. }
  23.  

Sa1uDoS
En línea

Senior++


Desconectado Desconectado

Mensajes: 957

Ama y haz lo que te de la gana


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #18 en: 16 Abril 2013, 21:04 pm »

No hace falta usar la librería Iostream y usar la funcion cout y Cin yo personalmente prefiero usar la librería Stdio.h  como ati te resulte mas comodo :P
En línea

Vendo cuenta de LEAGUE OF LEGENDS lvl 30, EU west, muy barata
mr.blood

Desconectado Desconectado

Mensajes: 150


Ver Perfil
Re: Que esta mal en este codigo
« Respuesta #19 en: 17 Abril 2013, 07:38 am »

No hace falta usar la librería Iostream y usar la funcion cout y Cin yo personalmente prefiero usar la librería Stdio.h  como ati te resulte mas comodo :P

Pues estas usando librerias de C en C++ xD.

Sa1uDoS
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
comprobar si este codigo en batch esta bien
Scripting
blha 0 2,305 Último mensaje 11 Septiembre 2008, 16:19 pm
por blha
ayuda que esta mal en este codigo C « 1 2 »
Programación C/C++
lupitapro 12 6,150 Último mensaje 15 Junio 2010, 13:17 pm
por M3LiNdR1
¿Qué está mal en este código?
Desarrollo Web
Aikanáro Anário 5 2,560 Último mensaje 15 Julio 2011, 02:53 am
por m0rf
necesito modificar este código de triqui esta C++ lo corro en koding linux
Programación C/C++
rapsolostyle 3 2,938 Último mensaje 1 Octubre 2015, 04:35 am
por 0xFer
Este codigo esta en C/C++ o ambos?
Programación C/C++
Beginner Web 4 1,792 Último mensaje 2 Octubre 2018, 22:34 pm
por OmarHack
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines