📜  如果给定两个相邻边的向量,则求平行四边形的面积

📅  最后修改于: 2021-10-23 08:32:52             🧑  作者: Mango

给定平行四边形的两个相邻边的 (xi+yj+zk) 形式的两个向量。任务是找出平行四边形的面积。
例子:

方法:假设我们有两个向量 a(x1*i+y1*j+z1*k) 和 b(x2*i+y2*j+z2*k) 并且我们知道平行四边形的面积由下式给出:

C++
// C++ code to calculate area of
// parallelogram if vectors of
// 2 adjacent sides are given
 
#include
using namespace std ;
 
// Function to calculate area of parallelogram 
float area(float x1, float y1, float z1, float x2,
            float y2, float z2)
    {
        float area = sqrt(pow((y1 * z2 - y2 * z1),2)
                        + pow((x1 * z2 - x2 * z1),2) +
                         pow((x1 * y2 - x2 * y1),2));
        return area;
    }
     
// Driver Code
int main()
{
    float x1 = 3;
    float y1 = 1;
    float z1 = -2;
    float x2 = 1;
    float y2 = -3;
    float z2 = 4;
    float a = area(x1, y1, z1, x2, y2, z2);
    cout << "Area = " << a;
    return 0;
// This code is contributed
// by Amber_Saxena.
}


Java
// Java code to calculate area of 
// parallelogram if vectors of
// 2 adjacent sides are given
 
public class GFG {
     
    // Function to calculate area of parallelogram  
    static float area(float x1, float y1, float z1, float x2,
                float y2, float z2)
        { 
            float area =(float) Math.sqrt(Math.pow((y1 * z2 - y2 * z1),2)
                            + Math.pow((x1 * z2 - x2 * z1),2) +
                             Math.pow((x1 * y2 - x2 * y1),2));
            return area;
        } 
 
    // Driver code
    public static void main (String args[]){
         float x1 = 3;
            float y1 = 1;
            float z1 = -2;
            float x2 = 1;
            float y2 = -3;
            float z2 = 4;
            float a = area(x1, y1, z1, x2, y2, z2);
            System.out.println("Area = " + a) ;
           
    }
 
// This code is contributed by ANKITRAI1
}


Python
# Python code to calculate area of
# parallelogram if vectors of
# 2 adjacent sides are given
 
import math
 
# to calculate area of parallelogram
def area(x1, y1, z1, x2, y2, z2):
    area = math.sqrt((y1 * z2 - y2 * z1) ** 2
           + (x1 * z2 - x2 * z1) ** 2 +
           (x1 * y2 - x2 * y1) ** 2)
    return area
 
# main function
def main():
    x1 = 3
    y1 = 1
    z1 = -2
    x2 = 1
    y2 = -3
    z2 = 4
    a = area(x1, y1, z1, x2, y2, z2)
    print("Area = ", a)
 
# driver code   
if __name__=="__main__":
    main()


C#
// C# code to calculate area of
// parallelogram if vectors of
// 2 adjacent sides are given
using System;
 
class GFG
{
 
// Function to calculate area
// of parallelogram
static float area(float x1, float y1,
                  float z1, float x2,
                  float y2, float z2)
{
    float area = (float) Math.Sqrt(Math.Pow((y1 * z2 - y2 * z1), 2) +
                                   Math.Pow((x1 * z2 - x2 * z1), 2) +
                                   Math.Pow((x1 * y2 - x2 * y1), 2));
    return area;
}
 
// Driver code
public static void Main ()
{
    float x1 = 3;
    float y1 = 1;
    float z1 = -2;
    float x2 = 1;
    float y2 = -3;
    float z2 = 4;
    float a = area(x1, y1, z1, x2, y2, z2);
    Console.Write("Area = " + a) ;
}
}
 
// This code is contributed
// by ChitraNayal


PHP


Javascript


输出:
Area =  17.320508075688775

如果您希望与专家一起参加现场课程,请参阅DSA 现场工作专业课程学生竞争性编程现场课程