Título: Error al compilar programa en c++ Publicado por: LauraD en 23 Agosto 2014, 03:19 am Hola!
Tengo que realizar el siguiente programa: Solicitar al usuario dos números y definir cuales son los divisores de cada uno de esos números y cuales tienen en común... Esto llevo del código, pero al ejecutarlo solicita los dos números y luego muestra un mensaje de windows que dice que el programa dejo de funcionar... Les agradeceria si me ayudan a corregir el error ya que no sé que es lo que esta fallando. Gracias Código: #include <cstdlib> Título: Re: Error al compilar programa en c++ Publicado por: Blaster en 23 Agosto 2014, 03:38 am En la primera iteración en esta linea:
Código
Estas aplicado el operador modulo sobre m cuando i tiene el valor de cero Título: Re: Error al compilar programa en c++ Publicado por: Bob1098 en 23 Agosto 2014, 17:20 pm Me gustaría darte un par de consejos. El primero es que no uses system("pause");, es una simple cuestión de portabilidad, al usarlo tienes que incluir la librería "cstdlib", y esta función esta ejecutando el comando "pause" que es propio del cmd de Windows. Con esto evitas que tu programa pueda ser ejecutado en Linux, u otras plataformas. Aunque no tiene demasiada importancia, es mejor acostumbrarse a usar cin.get(); que tiene la misma función y no necesita otra librería que no sea "iostream". Otra cosa es que en esta parte del código:
Código
No es necesario que inicialices la variable i como 0, ya que eso lo haces en el bucle for. Y por último es lo que dice Blaster, en el if estas dividiendo el numero entre 0, lo cual no se puede hacer ni en matemáticas ni en programación. Espero haberte ayudado, un saludo. Título: Re: Error al compilar programa en c++ Publicado por: Drewermerc en 24 Agosto 2014, 21:23 pm hola amiga.
Bueno deja de funcionar por que recuerda que no puedes dividir entre 0 y como el for lo inicias desde 0 entonces por eso ocurre un error lo único que debes hace es iniciar el for desde 1 y se soluciona. Saludos. Drewermerc. Título: Re: Error al compilar programa en c++ Publicado por: flony en 25 Agosto 2014, 04:16 am Drewermerc tiene razón
ahora el razonamiento del algoritmo seria mas o menos asi 1º determinar el menos(dividir mas arriba de eso no tiene sentido) 2º el for tendría como limite el menor 3º Código: if(m%i==0) 4º Citar cuales tienen en común guardar cada numero tanto de m como de n(critica constructiva llamar numero 1 y numero 2 son mas expresivo el nombre de la variable), podría ser en un vector del tamaño del menor , supongo debe haber alguna opción mas optima.5º comparar los vectores y determinar los números iguales jajajaj se me ocurrio algo mas practico, pero bue no puedo mostrar el code porque no se hacen tareas...pero digamos usando el if que generaste pero anidado ;) |