Показать сообщение отдельно
Старый 09.02.2013, 22:59   #9
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Ответ: На входе имеем 4-е переменные, на выходе 2-е.

Можешь сделать так, сам разберешься почему это работает) Явное приведение типов на всякий случай написал, для прояснения картины.

int s = (int)check1 * a + (int)check2 * b + (int)check3 * c + (int)check4 * d;
int p = ((int)check1+1)*((int)check2+1)*((int)check3+1)*(( int)check4+1)*a*b*c*d;

В этих двух переменных сумма и учетверенное произведение искомых переменных.
Таким образом:

int x = .5 * (s + sqrt(s^2 - p));
int y = .5 * (s - sqrt(s^2 - p));

Понятно, что можно было и наоборот посчитать, но про порядок, по которому в x и y кладутся переменные, ничего сказано не было.
(Offline)
 
Ответить с цитированием