在C ++中找到给定混合物中要达到目标比例所要添加的量

假设我们有一个大小为X的容器。它有水和其他液体的混合物,其中有W%的水。我们必须找出必须添加多少水才能将水的比例提高到Y%?如果X = 125,W = 20和Y = 25,则输出将为8.33升。

假设我们必须在先前的混合物中添加一定量的水,因此新的量将为X +A。因此,混合物中的水量将遵循此公式。

旧金额+ A =((X的W%)+ A)

混合物中的水量也等于新混合物中水的新百分比。因此,这是(X + A)的Y%。

因此我们可以表示为-(X + A)的Y%=(X的W%)+ A

A = [X *(Y-W)] / [100-Y]

示例

#include<iostream>
using namespace std;
float getWaterAmount(float X, float W, float Y) {
   return (X * (Y - W)) / (100 - Y);
}
int main() {
   float X = 125, W = 20, Y = 25;
   cout << "We need "<< getWaterAmount(X, W, Y) << " liters of water";
}

输出结果

We need 8.33333 liters of water