Giao điểm giữa hai đường thẳng

Xem PDF

Điểm: 1100 Thời gian: 1.0s Bộ nhớ: 1G Input: bàn phím Output: màn hình

Cho \(2\) đường thẳng:

  • \(y_{1} = a_{1} \cdot x_{1} + b_{1}\)
  • \(y_{2} = a_{2} \cdot x_{2} + b_{2}\)

Hãy in ra tọa độ giao điểm của chúng

Input

  • Gồm một dòng chứa \(4\) số \(a_{1}, b_{1}, a_{2}, b_{2} (1 \le a_{1}, b_{1}, a_{2}, b_{2} \le 10^{3})\)

Output

  • In ra một dòng là tọa độ giao điểm của \(2\) đường thẳng cách nhau bởi một dấu cách. Đáp án lấy chính xác đến \(6\) chữ số sau phần thập phân

Example

Test 1
Input
1 0 2 -2
Output
2.000000 2.000000

Bình luận


  • 0
    TruongQuangKhaicht1    4:11 p.m. 19 Tháng 9, 2024

    Code c++ 14:

    include<bits/stdc++.h>

    define N 1123456

    define thapphan setprecision(6)<<fixed

    using namespace std;
    long double i,n,s,a,a1,b,b1,c,c1,d,d1;
    int main()
    {
    ios_base::sync_with_stdio();
    cin.tie(0);cout.tie(0);
    cin>>a>>b>>a1>>b1;
    long double x=(b1-b)/(a-a1);
    long double y=a*x+b;
    cout<<thapphan<<x<<" "<<y;
    }


    • 0
      huuductritran    12:53 p.m. 1 Tháng 11, 2024

      def find_intersection(a1, b1, a2, b2):
      # Calculate x coordinate of intersection
      x = (b2 - b1) / (a1 - a2)

      # Calculate y coordinate of intersection using the first line's equation
      y = a1 * x + b1
      
      return x, y
      

      Read input

      a1, b1, a2, b2 = map(float, input().split())

      Calculate intersection

      x, y = find_intersection(a1, b1, a2, b2)

      Print the result with 6 decimal places

      print(f"{x:.6f} {y:.6f}")