
Respuestas del foro creadas
-
Hola Luis, esta bien hecho el pesarle el valor del primer sueldo a la variable menor antes de empezar las comparaciones.
No entendí bien tu ultima pregunta, podrías explicarme, por favor.
-
Te voy a dar una pista, tu variable menor la inicias con 0, después de eso tu colocas un if, donde comparas los salarios con tu variable menor, y si un salario es inferior que tu variable menor, ahora tu variable toma ese valor. El detalle es que la variable menor es 0, y nunca encuentra un valor menor a 0, por eso siempre sale 0.
-
Hola Paola,
Ya verifique tu código y entre el error, te lo explico: en el if donde vas comparando si los valores son iguales “if(matriz[i][j] == matriz[j][i])” si esto se cumple colocas la bandera de verdadero, pero no regresas la bandera a falso cuando pasa lo contrario, por ende con que un solo valor sea igual tu marcas la matriz como simétrica.
Se pensaría que con solo poner un “else” y cambiar la bandera a falso se arregla esto, pero no es así, ya que vas comparando valor por valor, y si el ultimo valor si es igual la bandera se quedara cono verdadero aunque exista un valor que no sea igual. Así que la solución te la dejo de tarea.
Yo he colocado “exit(-1);” para hacer funcionar el programa, pero solo lo hice para que lo vieras funcionando correctamente, hay que cambiar esos “exit(-1);” por algo más que solucione tu problema.
P.D. Desde un inicio nos podemos dar cuenta si una matriz no es simétrica ya que no es cuadrada, así que si identificamos desde el inicio que no es cuadrada no hay necesidad de seguir.(Es la modificación de la linea 21).
-
Gracias, ya estamos solucionando ese problema. 😀
-
Hola Luis,
En el caso de las multiplicaciones, la variable que declaras como por esta declarada en 0 y luego en el ciclo for multiplicas tu arreglo por esa variable, pero como vale 0 todo de dará de igual manera 0. Te recomiendo que la declares desde un inicio como 1 así en el primer ciclo guardar el valor iniciar e inicias operaciones. Por ejemplo si tienes este arreglo [4][8][9] en la primer vuelta multiplicas 1*4=4 y en la segunda quedara 4*8=32 y en la tercera y ultima 32*9=288.
Con las divisiones pasa algo similar, pero coloca abajo el 1 si no te van a salir números cercanos al 0. Por ejemplo con el mismo arreglo de arriba [4][8][9] en la primera división 4/1=4 la segunda 8/4=2 y la tercera 9/2= 4.5.
Espero haberte ayudado, si tienes mas dudas dime.
-
Muy bien hecho colega, quedó genial. Todo programador debe de tener la capacidad de ver un problema desde distintos puntos y plantear posibles soluciones y encontrar la más óptima.
Aquí la única regla, por cuestiones académicas, es usar solo lo visto en clase, de ahí en adelante todas las soluciones son válidas.
-
Angel Sánchez
Miembro13 diciembre, 2019 en 12:10 pm en respuesta a: Palabras incompletas en curso SQLListo, ya lo hemos solucionado. 😀
-
-
Angel Sánchez
Miembro10 diciembre, 2019 en 10:39 pm en respuesta a: Juego de adivinar el numero del jugador 1Hola Jaime, podrías copiar y pegar tu código aquí para checarlo. Por fa 😀
-
Hola Jaime, el detalle esta en la condición del while. Lo correcto es
!=
. -
Si, el exit(-1) hace que termine el programa. Ya que para que una matriz sea simetría todas las comparaciones deben de ser iguales, así que basta con que un solo valor no sea igual para determinar que no es una matriz simétrica.
-
Hola, podrías pasarme tu código para analizarlo, por favor 😀
-
Angel Sánchez
Miembro16 diciembre, 2019 en 6:05 pm en respuesta a: ¿Que tipo de pausa de pantalla es más eficiente en C++?También lo podrías usar, varios lo utilizan con ese fin, hacer una pausa. Pero yo me quedaría con el estándar para evitar problemas.
-
Me alegra que haya quedado solucionado tu problema.
-
Esas comillas se ponen así una vez que se pegan aquí, de alguna forma cambia el formato.
Redes sociales.