Encuentre la cantidad que se agregará para lograr la proporción objetivo en una mezcla dada

Te dan un recipiente de X litros que contiene una mezcla de vino y agua. La mezcla contiene W% de agua en ella. ¿Cuántos litros de agua se deben agregar para aumentar la relación de agua a Y%? 
La entrada incluye 3 enteros: X, W e Y respectivamente. 
La salida debe estar en formato flotante hasta 2 puntos decimales. 

Ejemplos: 

Entrada: X = 125, W = 20, Y = 25 
Salida: 8,33 litros El 
20 % de 125 es 25. Si sumamos 8,33 litros, obtenemos 33,33, que es el 25 % de 133,33.

Entrada: X = 100, W = 50, Y = 60 
Salida: 25 

Sea A litros la cantidad de agua a añadir. 
Entonces, la nueva cantidad de mezcla = (X + A) litros 
Y la cantidad de agua en la mezcla = (cantidad anterior + A) = ((W % de X ) + A ) 
Además, la cantidad de agua en la mezcla = nuevo porcentaje de agua en la nueva mezcla = Y % de (X + A) 
Ahora, podemos escribir la expresión como 
——————————— 
Y % de ( X + A) = W % de X + A 
———————————- 
Ya que, ambos indican la cantidad de agua. 
Simplificando esta expresión, obtendremos 
A = [X * (Y – W)] / [100 – Y]
Ilustración: 
X = 125, W = 20% e Y = 25%;
Entonces, para la pregunta dada, la cantidad de agua que se agregará = (125 * (25 – 20)) / (100 – 25) = 8,33 litros.

 
A continuación se muestra la implementación del enfoque anterior:  

C

// C program to find amount of water to
// be added to achieve given target ratio.
#include <stdio.h>
 
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

<?php
// PHP program to find amount of water to
// be added to achieve given target ratio.
function findAmount($X, $W, $Y)
{
    return ($X * ($Y - $W)) / (100 - $Y);
}
 
// Driver Code
$X = 100; $W = 50; $Y = 60;
echo "Water to be added = " .
      findAmount($X, $W, $Y);
 
// This code is contributed
// by Akanksha Rai
?>

Javascript

<script>
    // Javascript program to find amount of water to
    // be added to achieve given target ratio.
     
    function findAmount(X, W, Y)
    {
        return (X * (Y - W)) / (100 - Y);
    }
     
    let X = 100, W = 50, Y = 60;
    document.write("Water to be added = "+ findAmount(X, W, Y).toFixed(2));
 
</script>
Producción: 

Water to be added = 25.00

 

Complejidad de tiempo: O(1)

Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por Rohit_ranjan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *