Si el resultado es positivo, aplique la acción A.
Si el resultado es 0, aplique la acción B.
Si el resultado es negativo, aplique la acción C.
No tiene sentido el 3er "Si" (o el 3er caso), porque es imposible que X*X (sea cual sea X) resulte negativo ¿no?
Bueno, en varias situaciones similares, preciso prever si un resultado puede ser positivo, 0 o negativo, para evitar ese tipo de sin sentidos.
Aquí va una:
Quiero saber si H puede ser 0 o positivo (siempre me da negativo, pero me es MUY difícil probar todos los casos).
A = Es un número al azar entre 31.7 y 236.
B = 43 ~ 67.85 (me refiero a que también es un número al azar, pero que va desde el 43 hasta el 67.85).
C = 1 ~ 10
D = Raiz (374.6*374.6+A*A+B*B)
Nota: D es siempre positivo, se deduce de lo anterior.
E = (374.6/D)*-C
Nota: E es siempre negativo, se deduce...
F = (B/D)*-C
Nota: F es siempre negativo...
G = Redondear.Más(((200*F-1)+Raiz((200*F-1)*(200*F-1)+800*B))/2)
Nota: Redondear.Más convierte al número en el paréntesis al entero mayor más cercano, sólo si el número en cuestión es decimal).
H = -374.6+G*Abs(E)
Nota: Abs convierte al número en el paréntesis al absoluto.
Posible solución 1:
Hacer lo "normal"... no sé cómo.
2:
Estudiar MUCHO sobre ecuaciones, quiero ¿dónde?
3:
Hacer un programa que resuelva este tipo de problemas, quiero, o si ya hay uno hecho, lo quiero ¿cómo lo consigo? pero sino ¿cómo hacerlo? Yo sabría cómo hacer uno que pruebe todas las variaciones de A, B y C, pero nunca terminaría. Pero si hubiera alguna manera de hacer las pruebas descartando ciertos casos... se podría. Creo que se puede, pero no sé cómo.
Bueno... ¿me ayudan, por favor? Tienen al menos 3 formas de hacerlo.
Muchas gracias.