Programa para hallar el tercer lado de un triangulo usando la ley de los cosenos

Dados dos lados A, B y el ángulo C. Encuentra el tercer lado del triángulo usando la ley de los cosenos.
Ejemplos: 
 

Input : a = 5, b = 8, c = 49 
Output : 6.04339 

En particular, la Ley de los cosenos se puede usar para encontrar la longitud del tercer lado de un triángulo cuando conoces la longitud de dos lados y el ángulo entre ellos. Vea aquí para aprender a encontrar el valor de cos. 
Supongamos que a, b, c son los lados del triángulo donde c es el lado opuesto al ángulo C. Entonces, 
 

c^2 = a^2 + b^2 - 2*a*b*cos(c) 
OR
c = sqrt(a^2 + b^2 - 2*a*b*cos(c))

C++

// CPP program to find third
// side of triangle using
// law of cosines
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to calculate cos value of angle c
float cal_cos(float n)
{
    float accuracy = 0.0001, x1, denominator, cosx, cosval;
 
    // Converting degrees to radian
    n = n * (3.142 / 180.0);
 
    x1 = 1;
 
    // Maps the sum along the series
    cosx = x1;
 
    // Holds the actual value of sin(n)
    cosval = cos(n);
    int i = 1;
    do {
        denominator = 2 * i * (2 * i - 1);
        x1 = -x1 * n * n / denominator;
        cosx = cosx + x1;
        i = i + 1;
    } while (accuracy <= fabs(cosval - cosx));
 
    return cosx;
}
 
// Function to find third side
float third_side(int a, int b, float c)
{
    float angle = cal_cos(c);
    return sqrt((a * a) + (b * b) - 2 * a * b * angle);
}
// Driver program to check the above function
int main()
{
    float c = 49;
    int a = 5, b = 8;
    // function call
    cout << third_side(a, b, c);
 
    return 0;
}

Java

// Java program to find third
// side of triangle using
// law of cosines
class GFG
{
    // Function to calculate
    // cos value of angle c
    static float cal_cos(float n)
    {
        float accuracy = 0.0001f, x1;
        float denominator, cosx, cosval;
     
        // Converting degrees to radian
        n = n * (3.142f / 180.0f);
     
        x1 = 1;
     
        // Maps the sum along the series
        cosx = x1;
     
        // Holds the actual value of sin(n)
        cosval = (float)Math.cos(n);
        int i = 1;
        do {
            denominator = 2 * i * (2 * i - 1);
            x1 = -x1 * n * n / denominator;
            cosx = cosx + x1;
            i = i + 1;
        } while (accuracy <=
               Math.abs(cosval - cosx));
     
        return cosx;
    }
     
    // Function to find third side
    static float third_side(int a,
                    int b, float c)
    {
        float angle = cal_cos(c);
         
        return (float)Math.sqrt((a * a) +
            (b * b) - 2 * a * b * angle);
}
 
// Driver code
public static void main (String[] args)
{
    float c = 49;
    int a = 5, b = 8;
     
    // function call
    System.out.print(Math.round(third_side(a,
                    b, c)*100000.0)/100000.0);
}
}
 
// This code is contributed by Anant Agarwal.

Python3

# Python3 program to find third side
# of triangle using law of cosines
import math as mt
 
# Function to calculate cos
# value of angle c
def cal_cos(n):
 
    accuracy = 0.0001
    x1, denominator, cosx, cosval = 0, 0, 0, 0
 
    # Converting degrees to radian
    n = n * (3.142 / 180.0)
 
    x1 = 1
 
    # Maps the sum along the series
    cosx = x1
 
    # Holds the actual value of sin(n)
    cosval = mt.cos(n)
    i = 1
    while (accuracy <= abs(cosval - cosx)):
 
        denominator = 2 * i * (2 * i - 1)
        x1 = -x1 * n * n / denominator
        cosx = cosx + x1
        i = i + 1
 
    return cosx
 
# Function to find third side
def third_side(a, b, c):
    angle = cal_cos(c)
    return mt.sqrt((a * a) +
                   (b * b) - 2 * a * b * angle)
 
# Driver Code
c = 49
a, b = 5, 8
print(third_side(a, b, c))
 
# This code is contributed by mohit kumar

C#

// C# program to find third
// side of triangle using
// law of cosines
using System;
 
class GFG
{
    // Function to calculate
    // cos value of angle c
    static float cal_cos(float n)
    {
        float accuracy = 0.0001f, x1;
        float denominator, cosx, cosval;
     
        // Converting degrees to radian
        n = n * (3.142f / 180.0f);
     
        x1 = 1;
     
        // Maps the sum along the series
        cosx = x1;
     
        // Holds the actual value of sin(n)
        cosval = (float)Math.Cos(n);
        int i = 1;
        do {
            denominator = 2 * i * (2 * i - 1);
            x1 = -x1 * n * n / denominator;
            cosx = cosx + x1;
            i = i + 1;
        } while (accuracy <=
                Math.Abs(cosval - cosx));
     
        return cosx;
    }
     
    // Function to find third side
    static float third_side(int a,
                    int b, float c)
    {
        float angle = cal_cos(c);
         
        return (float)Math.Sqrt((a * a) +
               (b * b) - 2 * a * b * angle);
    }
 
    // Driver code
    public static void Main ()
    {
        float c = 49;
        int a = 5, b = 8;
         
        // function call
        Console.WriteLine(Math.Round(third_side(a,
                        b, c)*100000.0)/100000.0);
    }
}
 
// This code is contributed by vt_m.

PHP

<?php
// PHP program to find third
// side of triangle using
// law of cosines
 
// Function to calculate
// cos value of angle c
function cal_cos( $n )
{
    $accuracy = 0.0001;
    $x1; $denominator;
    $cosx; $cosval;
 
    // Converting degrees
    // to radian
    $n = $n * (3.142 / 180.0);
 
    $x1 = 1;
 
    // Maps the sum
    // along the series
    $cosx = $x1;
 
    // Holds the actual
    // value of sin(n)
    $cosval = cos($n);
    $i = 1;
    do
    {
        $denominator = 2 * $i *
                      (2 * $i - 1);
        $x1 = -$x1 * $n * $n /
               $denominator;
        $cosx = $cosx + $x1;
        $i = $i + 1;
    } while ($accuracy <= ($cosval -
                           $cosx));
 
    return $cosx;
}
 
// Function to find third side
function third_side($a, $b, $c)
{
    $angle = cal_cos($c);
    return sqrt(($a * $a) +
                ($b * $b) - 2 *
                 $a * $b * $angle);
}
 
// Driver Code
$c = 49;
$a = 5;
$b = 8;
 
// function call
echo third_side($a, $b, $c);
 
// This code is contributed
// by ajit
?>

Javascript

<script>
// Javascript program to find third
// side of triangle using
// law of cosines
 
    // Function to calculate
    // cos value of angle c
    function cal_cos( n) {
        let accuracy = 0.0001, x1;
        let denominator, cosx, cosval;
 
        // Converting degrees to radian
        n = n * (3.142 / 180.0);
 
        x1 = 1;
 
        // Maps the sum alet the series
        cosx = x1;
 
        // Holds the actual value of sin(n)
        cosval =  Math.cos(n);
        let i = 1;
        do {
            denominator = 2 * i * (2 * i - 1);
            x1 = -x1 * n * n / denominator;
            cosx = cosx + x1;
            i = i + 1;
        } while (accuracy <= Math.abs(cosval - cosx));
 
        return cosx;
    }
 
    // Function to find third side
    function third_side( a, b, c) {
        let angle = cal_cos(c);
 
        return  Math.sqrt((a * a) + (b * b) - 2 * a * b * angle);
    }
 
    // Driver code
      
        let c = 49;
        let a = 5, b = 8;
 
        // function call
        document.write(Math.round(third_side(a, b, c) * 100000.0) / 100000.0);
 
// This code is contributed by Rajput-Ji
</script>
Producción

6.04339

Complejidad de tiempo : O (log (n)), ya que usa la función sqrt incorporada
Espacio auxiliar : O (1), ya que no estamos usando ningún espacio adicional.

Publicación traducida automáticamente

Artículo escrito por Striver y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *