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>
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