给定a:b和b:c。任务是编写一个程序来查找比率a:b:c
例子:
Input: a:b = 2:3, b:c = 3:4
Output: 2:3:4
Input: a:b = 3:4, b:c = 8:9
Output: 6:8:9
方法:技巧是使通用术语“ b”在两个比率中相等。因此,将第一比率乘以b 2 (第二比率的b项),然后将第二比率乘以b 1 。
Given: a:b1 and b2:c
Solution: a:b:c = (a*b2):(b1*b2):(c*b1)
For example:
If a : b = 5 : 9 and b : c = 7 : 4, then find a : b : c.
Solution:
Here, Make the common term ‘b’ equal in both ratios.
Therefore, multiply the first ratio by 7 and the second ratio by 9.
So, a : b = 35 : 63 and b : c = 63 : 36
Thus, a : b : c = 35 : 63 : 36
下面是上述方法的实现:
C++
// C++ implementation of above approach
#include
using namespace std;
// Function to print a:b:c
void solveProportion(int a, int b1, int b2, int c)
{
int A = a * b2;
int B = b1 * b2;
int C = b1 * c;
// To print the given proportion
// in simplest form.
int gcd = __gcd(__gcd(A, B), C);
cout << A / gcd << ":"
<< B / gcd << ":"
<< C / gcd;
}
// Driver code
int main()
{
// Get the ratios
int a, b1, b2, c;
// Get ratio a:b1
a = 3;
b1 = 4;
// Get ratio b2:c
b2 = 8;
c = 9;
// Find the ratio a:b:c
solveProportion(a, b1, b2, c);
return 0;
}
Java
// Java implementation of above approach
import java.util.*;
import java.lang.*;
import java.io.*;
class GFG{
static int __gcd(int a,int b){
return b==0 ? a : __gcd(b, a%b);
}
// Function to print a:b:c
static void solveProportion(int a, int b1, int b2, int c)
{
int A = a * b2;
int B = b1 * b2;
int C = b1 * c;
// To print the given proportion
// in simplest form.
int gcd = __gcd(__gcd(A, B), C);
System.out.print( A / gcd + ":"
+ B / gcd + ":"
+ C / gcd);
}
// Driver code
public static void main(String args[])
{
// Get the ratios
int a, b1, b2, c;
// Get ratio a:b1
a = 3;
b1 = 4;
// Get ratio b2:c
b2 = 8;
c = 9;
// Find the ratio a:b:c
solveProportion(a, b1, b2, c);
}
}
Python 3
# Python 3 implementation
# of above approach
import math
# Function to print a:b:c
def solveProportion(a, b1, b2, c):
A = a * b2
B = b1 * b2
C = b1 * c
# To print the given proportion
# in simplest form.
gcd1 = math.gcd(math.gcd(A, B), C)
print( str(A // gcd1) + ":" +
str(B // gcd1) + ":" +
str(C // gcd1))
# Driver code
if __name__ == "__main__":
# Get ratio a:b1
a = 3
b1 = 4
# Get ratio b2:c
b2 = 8
c = 9
# Find the ratio a:b:c
solveProportion(a, b1, b2, c)
# This code is contributed
# by ChitraNayal
C#
// C# implementation of above approach
using System;
class GFG
{
static int __gcd(int a,int b)
{
return b == 0 ? a : __gcd(b, a % b);
}
// Function to print a:b:c
static void solveProportion(int a, int b1,
int b2, int c)
{
int A = a * b2;
int B = b1 * b2;
int C = b1 * c;
// To print the given proportion
// in simplest form.
int gcd = __gcd(__gcd(A, B), C);
Console.Write( A / gcd + ":" +
B / gcd + ":" +
C / gcd);
}
// Driver code
public static void Main()
{
// Get the ratios
int a, b1, b2, c;
// Get ratio a:b1
a = 3;
b1 = 4;
// Get ratio b2:c
b2 = 8;
c = 9;
// Find the ratio a:b:c
solveProportion(a, b1, b2, c);
}
}
// This code is contributed
// by Akanksha Rai(Abby_akku)
PHP
Javascript
输出:
6:8:9