您将得到一个X升的容器,其中装有葡萄酒和水的混合物。该混合物中包含W%的水。必须添加多少升水才能使水的比例达到Y%?
输入分别包含3个整数X,W和Y。
输出应为浮点格式,最多2个小数点。
例子:
Input : X = 125, W = 20, Y = 25
Output : 8.33 liters
20% of 125 is 25. If we add 8.33 liters, we get 33.33 which is 25% of 133.33.
Input : X = 100, W = 50, Y = 60
Output : 25
Let the amount of water to be added be A liters.
So, the new amount of mixture = (X + A) liters
And the amount of water in the mixture = (old amount + A) = ((W % of X ) + A )
Also, the amount of water in the mixture = new percentage of water in new mixture = Y % of (X + A)
Now, we can write the expression as
———————————
Y % of ( X + A) = W % of X + A
———————————-
Since, both denote the amount of water.
On simplifying this expression, we will get
A = [X * (Y – W)] / [100 – Y]
Illustration :
X = 125, W = 20% and Y = 25%;
So, for the given question, the amount of water to be added = (125 * (25 – 20)) / (100 – 25) = 8.33 liters
下面是上述方法的实现:
C
// C program to find amount of water to
// be added to achieve given target ratio.
#include
float findAmount(float X, float W, float Y)
{
return (X * (Y - W)) / (100 - Y);
}
int main()
{
float X = 100, W = 50, Y = 60;
printf("Water to be added = %.2f ",
findAmount(X, W, Y));
return 0;
}
Java
// Java program to find amount of water to
// be added to achieve given target ratio.
public class GFG {
static float findAmount(float X, float W, float Y)
{
return (X * (Y - W)) / (100 - Y);
}
// Driver code
public static void main(String args[])
{
float X = 100, W = 50, Y = 60;
System.out.println("Water to be added = "+ findAmount(X, W, Y));
}
// This code is contributed by ANKITRAI1
}
Python3
# Python3 program to find amount
# of water to be added to achieve
# given target ratio.
def findAmount(X, W, Y):
return (X * (Y - W) / (100 - Y))
X = 100
W = 50; Y = 60
print("Water to be added",
findAmount(X, W, Y))
# This code is contributed
# by Shrikant13
C#
// C# program to find amount of water to
// be added to achieve given target ratio.
using System;
class GFG
{
public static double findAmount(double X,
double W,
double Y)
{
return (X * (Y - W)) / (100 - Y);
}
// Driver code
public static void Main()
{
double X = 100, W = 50, Y = 60;
Console.WriteLine("Water to be added = {0}",
findAmount(X, W, Y));
}
}
// This code is contributed by Soumik
PHP
Water to be added = 25.00