Las soluciones presentadas aquí donde mayormente correcta y fácil de entender .
Pero yo preferiría el solution provided by Sany Huttunen:
citado:
if (x1 == x2 && x1 == y1 && x1 == y2)
{
printf("Input values shouldn't be equal!");
}
Aquí es la razón por la:
Aunque parece no ser posible en este caso concreto se dirigieron inmediatamente a pensar en la refactorización, como en:
(a*b) + (a*c) + (a*d)
que podría ser simplificado en
a*(b+c+d)
como se ha mencionado que no es posible simplificar en este caso concreto, sin embargo, debido a
(a*b) + (a*c) + (a*d)
sigue diferentes reglas matemáticas continuación
(a+b) * (a+c) * (a+d)
Esto tiene algo que ver con reglas conmutativas, asociativas y distributivas si no recuerdo mal.
¿Quiere decir que 1, 1, 1, 1 no es válido, pero 1, 1, 1, 2 es válido o todos tienen que ser diferentes? – Xav
1,1,1,1 no es válido, pero 1,1,1,2 es válido. Solo si todas las variables tienen el mismo valor, no es válido. – Fergus