Представленные здесь решения в основном правильные и простые для понимания.
Но я бы предпочел решение от Sany Huttunen :
цитировал:
if (x1 == x2 && x1 == y1 && x1 == y2)
{
printf("Input values shouldn't be equal!");
}
Вот причина, по которой :
Хотя это кажется невозможным в этом конкретном случае, оно сразу же заставило меня задуматься о рефакторинге, как в:
(a*b) + (a*c) + (a*d)
, который можно упростить до
a*(b+c+d)
как уже упоминалось, в данном конкретном случае упростить невозможно, потому что
(a*b) + (a*c) + (a*d)
следует другим математическим правилам, тогда
(a+b) * (a+c) * (a+d)
Это как-то связано с коммутативными, ассоциативными и распределительными правилами, если я правильно помню.