if a+b+c=1 and a^2+b^2+c^2= 9 and a^3+ b^3+c^3 =1 . find 1/a+1/b+1/c
Answers
Answered by
2
We can infer that a, b and c all should be in between [-sqrt(2), + sqrt(2)]
This is since a^2 + b^2 + c^2 = 2.
All squares are positive, so if any of the terms would be bigger than 2, the others can never compensate for that, since they cant be negative.
You can solve c as 1 - a - b;
Now if you substitute this in a^2 + b^2 + c^2 = 2, you get:
2*b^2 +(2*a-2)*b + (2*a^2 - 2*a -1) = 0
This is a quadratic equation in b.
Let A = 2
B = (2*a-2)
C= (2*a^2 - 2*a -1)
We find D^2 = -12*a^2 + 24*a + 8
If we solve a from THIS quadratic equation, we find a = 1-sqrt(2) or a = 1+sqrt(2).
So a must be BETWEEN these limits for D^2 to be >=0.
We also know a better (lower = more restrictive) upper limit for a: sqrt(2).
In the program below I have a for loop for a. From this, b is calculated. You can see actually that the outer if in the check function is always true, meaning I did the math well to solve b.
If you put a breakpoint on the printf in the check function, you see it is never hit. Although no proof, it appears to be that there are at least no solutions with a, b and c in R, maybe a smarter guy finds some complex solutions.
===
#include
#include
void check(double a, double b)
{
double c = 1 - a - b;
double a2 = a*a;
double b2 = b*b;
double c2 = c*c;
double sum2 = a2 + b2 + c2;
if (fabs(sum2 - 2) < 0.001)
{
double sum3 = a2*a + b2*b + c2*c;
if (fabs(sum3 - 3) < 0.001)
{
printf("a=%g, b=%g, c=%g\n", a, b, c);
}
}
}
int main(int argc, char* argv[])
{
double limit = sqrt(2.0);
double step = 1e-7;
int i = 0;
for (double a = 1-sqrt(2.0); a <= limit; a+=step, ++i)
{
double a2 = a*a;
if (i%100 == 0)
printf("a=%g\n", a);
double A = 2;
double B = (2 * a - 2);
double C = (2 *a *a - 2*a - 1);
double D2 = B*B - 4 * A*C;
if (D2 >= 0)
{
double D = sqrt(D2);
double b1 = (-B - D) / (2*A);
check(a, b1);
double b2 = (-B + D) / (2*A);
check(a, b2);
}
}
return 0;
}
This is since a^2 + b^2 + c^2 = 2.
All squares are positive, so if any of the terms would be bigger than 2, the others can never compensate for that, since they cant be negative.
You can solve c as 1 - a - b;
Now if you substitute this in a^2 + b^2 + c^2 = 2, you get:
2*b^2 +(2*a-2)*b + (2*a^2 - 2*a -1) = 0
This is a quadratic equation in b.
Let A = 2
B = (2*a-2)
C= (2*a^2 - 2*a -1)
We find D^2 = -12*a^2 + 24*a + 8
If we solve a from THIS quadratic equation, we find a = 1-sqrt(2) or a = 1+sqrt(2).
So a must be BETWEEN these limits for D^2 to be >=0.
We also know a better (lower = more restrictive) upper limit for a: sqrt(2).
In the program below I have a for loop for a. From this, b is calculated. You can see actually that the outer if in the check function is always true, meaning I did the math well to solve b.
If you put a breakpoint on the printf in the check function, you see it is never hit. Although no proof, it appears to be that there are at least no solutions with a, b and c in R, maybe a smarter guy finds some complex solutions.
===
#include
#include
void check(double a, double b)
{
double c = 1 - a - b;
double a2 = a*a;
double b2 = b*b;
double c2 = c*c;
double sum2 = a2 + b2 + c2;
if (fabs(sum2 - 2) < 0.001)
{
double sum3 = a2*a + b2*b + c2*c;
if (fabs(sum3 - 3) < 0.001)
{
printf("a=%g, b=%g, c=%g\n", a, b, c);
}
}
}
int main(int argc, char* argv[])
{
double limit = sqrt(2.0);
double step = 1e-7;
int i = 0;
for (double a = 1-sqrt(2.0); a <= limit; a+=step, ++i)
{
double a2 = a*a;
if (i%100 == 0)
printf("a=%g\n", a);
double A = 2;
double B = (2 * a - 2);
double C = (2 *a *a - 2*a - 1);
double D2 = B*B - 4 * A*C;
if (D2 >= 0)
{
double D = sqrt(D2);
double b1 = (-B - D) / (2*A);
check(a, b1);
double b2 = (-B + D) / (2*A);
check(a, b2);
}
}
return 0;
}
sunilyadav300:
Tujhe to kisine bhi thanks Nahi kha an take
Similar questions