Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình tìm tỉ số chung của ba số trong C ++

Trong bài toán này, chúng tôi đưa ra hai tỷ lệ tức là x:y và y:z. Nhiệm vụ của chúng ta là tạo một Chương trình tìm tỉ số chung của ba số trong C ++ .

Mô tả sự cố - Ta cần tìm tỉ số chung của ba số bằng các tỉ số đã cho. Sử dụng x:y và y:z, chúng ta sẽ tìm được x:y:z.

Hãy lấy một ví dụ để hiểu vấn đề,

Đầu vào

3:5 8:9

Đầu ra

24: 40: 45

Giải thích - Ta có x:y và y:z, hai tỉ số khác nhau. Để tạo x:y:z, chúng ta sẽ tạo y như nhau trong cả hai tỷ lệ để làm cho tỷ lệ có thể đạt được. Để làm như vậy, chúng tôi sẽ nhân rộng.

$ \ frac {\ square} {\ square1} =\ frac {\ square2} {\ square} \ Rightarrow \ frac {\ square \ square2} {\ square1 \ square2} =\ frac {\ square1 \ square2} {\ square2 \ square} $

Điều này sẽ làm cho tỷ lệ x ’:y’:z ’

Vì vậy, 3 * 8:8 * 5:5 * 9 =24:40:45 là tỷ lệ.

Phương pháp tiếp cận giải pháp

Như đã thảo luận trong ví dụ trên, chúng ta cần làm cho yếu tố giữa chung cho cả hai tỷ lệ. Và đối với điều này, chúng ta sẽ thực hiện phép nhân chéo nhưng đôi khi phép nhân chéo có thể làm cho kết quả lớn hơn. Vì vậy, một cách tiếp cận hiệu quả sẽ là tìm LCM. Và sau đó tìm tỷ lệ dưới dạng -

$ \ frac {\ square * \ square \ square \ square} {\ square1}:\ square \ square \ square:\ frac {\ square * \ square \ square \ square} {\ square2} $

Chương trình minh họa hoạt động của giải pháp của chúng tôi,

Ví dụ

#include <iostream>
using namespace std;
int calcLcm(int a, int b){
   int lcm = 2;
   while(lcm <= a*b) {
      if( lcm%a==0 && lcm%b==0 ) {
         return lcm;
         break;
      }
      lcm++;
   }
   return 0;
}
void calcThreeProportion(int x, int y1, int y2, int z){
   int lcm = calcLcm(y1, y2);
   cout<<((x*lcm)/y1)<<" : "<<lcm<<" : "<<((z*lcm)/y2);
}
int main() {
   int x = 12, y1 = 15, y2 = 9, z = 16;
   cout<<"The ratios are\t"<<" x:y = "<<x<<":"<<y1<<"\ty:z = "<<y2<<":"<<z<<endl;
   cout<<"The common ratio of three numbers is\t";
   calcThreeProportion(x, y1, y2, z);
   return 0;
}

Đầu ra

The ratios are x:y = 12:15 y:z = 9:16
The common ratio of three numbers is 36 : 45 : 80