Рубрики

Программа для поиска области треугольника

Нахождение области по заданным сторонам:


Примеры :

Input : a = 5, b = 7, c = 8
Output : Area of a triangle is 17.320508


Input : a = 3, b = 4, c = 5
Output : Area of a triangle is 6.000000

Площадь треугольника можно просто оценить по следующей формуле.

Area = sqrt(s*(s-a)*(s-b)*(s-c))
where a, b and c are lengths of sides of
triangle and s = (a+b+c)/2

C ++

// C ++ Программа для поиска области
// треугольника
#include <bits/stdc++.h>

using namespace std;

  

float findArea(float a, float b, float c) 

    // Длина сторон должна быть положительной

    // и сумма любых двух сторон

    // должно быть меньше третьей стороны.

    if (a < 0 || b < 0 || c < 0 || 

       (a + b <= c) || a + c <= b || 

                       b + c <= a) 

    

        cout << "Not a valid trianglen"

        exit(0); 

    

    float s = (a + b + c) / 2; 

    return sqrt(s * (s - a) * 

                    (s - b) * (s - c)); 

  
// Код драйвера

int main() 

    float a = 3.0; 

    float b = 4.0; 

    float c = 5.0; 

  

    cout << "Area is " << findArea(a, b, c); 

    return 0; 

  
// Этот код добавлен
// ратбхупендра

С

#include <stdio.h> 
#include <stdlib.h> 

  

float findArea(float a, float b, float c)

{

    // Длина сторон должна быть положительной и сумма любых двух сторон

    // должно быть меньше третьей стороны.

    if (a < 0 || b < 0 || c <0 || (a+b <= c) ||

        a+c <=b || b+c <=a)

    {

        printf("Not a valid trianglen");

        exit(0);

    }

    float s = (a+b+c)/2;

    return sqrt(s*(s-a)*(s-b)*(s-c));

}

  

int main()

{

    float a = 3.0;

    float b = 4.0;

    float c = 5.0;

  

    printf("Area is %f", findArea(a, b, c));

    return 0;

}

Джава

// Java-программа для печати
// треугольник Флойда

      

class Test

{

    static float findArea(float a, float b, float c)

    {

        // Длина сторон должна быть положительной и сумма любых двух сторон

        // должно быть меньше третьей стороны.

        if (a < 0 || b < 0 || c <0 || (a+b <= c) ||

            a+c <=b || b+c <=a)

        {

            System.out.println("Not a valid triangle");

            System.exit(0);

        }

        float s = (a+b+c)/2;

        return (float)Math.sqrt(s*(s-a)*(s-b)*(s-c));

    }

          

    // Метод драйвера

    public static void main(String[] args) 

    {

        float a = 3.0f;

        float b = 4.0f;

        float c = 5.0f;

      

        System.out.println("Area is " + findArea(a, b, c));

    }

}

питон

# Программа Python для поиска области
№ треугольника

  
# Длина сторон должна быть положительной
# и сумма любых двух сторон

def findArea(a,b,c): 

  

    # должен быть меньше третьей стороны.

    if (a < 0 or b < 0 or c < 0 or (a+b <= c) or (a+c <=b) or (b+c <=a) ): 

        print('Not a valid trianglen'

        return

          

    # рассчитать полупериметр

    s = (a + b + c) / 2

      

    # рассчитать площадь

    area = (s * (s - a) * (s - b) * (s - c)) ** 0.5

    print('Area of a traingle is %f' %area) 

  

  
# Инициализировать первую сторону traingle

a = 3.0

# Инициализировать вторую сторону traingle

b = 4.0

# Инициализировать третью сторону traingle

c = 5.0

findArea(a,b,c) 

  
# Этот код предоставлен Шариком Раза

C #

// C # программа для печати
// треугольник Флойда

using System;

  

class Test {

      

    // Функция для поиска области

    static float findArea(float a, float b,

                        float c)

    {

          

        // Длина сторон должна быть положительной

        // и сумма любых двух сторон

        // должно быть меньше третьей стороны.

        if (a < 0 || b < 0 || c <0 || 

        (a + b <= c) || a + c <=b || 

            b + c <=a)

        {

            Console.Write("Not a valid triangle");

            System.Environment.Exit(0);

        }

        float s = (a + b + c) / 2;

        return (float)Math.Sqrt(s * (s - a) * 

                            (s - b) * (s - c));

    }

          

    // Код драйвера

    public static void Main() 

    {

        float a = 3.0f;

        float b = 4.0f;

        float c = 5.0f;

      

        Console.Write("Area is " + findArea(a, b, c));

    }

}

  
// Этот код предоставлен Нитин Миттал.

PHP

<?php

function findArea($a, $b, $c)

{

    // Длина сторон должна быть положительной

    // и сумма любых двух сторон должна

    // быть меньше третьей стороны.

    if ($a < 0 or $b < 0 or

        $c < 0 or ($a + $b <= $c) or

        $a + $c <= $b or $b + $c <= $a)

    {

        echo "Not a valid trianglen";

        exit(0);

    }

    $s = ($a + $b + $c) / 2;

    return sqrt($s * ($s - $a) * 

            ($s - $b) * ($s - $c));

}

  
// Код драйвера

$a = 3.0;

$b = 4.0;

$c = 5.0;

  

echo "Area is ", findArea($a, $b, $c);

  
// Этот код предоставлен anuJ_67.
?>


Выход :

Area is 6

Нахождение области по координатам:

Если нам даны координаты трех углов, мы можем применить ниже формулу Shoelace для области.

Area

 = | 1/2 [ (x1y2 + x2y3 + ... + xn-1yn + xny1) -
           (x2y1 + x3y2 + ... + xnyn-1 + x1yn) ] |

C ++

// C ++ программа для оценки площади многоугольника с использованием
// формула шнурка
#include <bits/stdc++.h>

using namespace std;

   
// (X [i], Y [i]) - координаты i-й точки.

double polygonArea(double X[], double Y[], int n)

{

    // Инициализируем область

    double area = 0.0;

   

    // Рассчитать значение формулы шнурка

    int j = n - 1;

    for (int i = 0; i < n; i++)

    {

        area += (X[j] + X[i]) * (Y[j] - Y[i]);

        j = i;  // j - предыдущая вершина i

    }

   

    // Возвращаем абсолютное значение

    return abs(area / 2.0);

}

   
// Программа драйвера для проверки вышеуказанной функции

int main()

{

    double X[] = {0, 2, 4};

    double Y[] = {1, 3, 7};

   

    int n = sizeof(X)/sizeof(X[0]);

   

    cout << polygonArea(X, Y, n);

}

Джава

// Java-программа для оценки области
// формула многоугольника

import java.io.*;

import java.math.*;

  

class GFG {

  

    // (X [i], Y [i]) - координаты i-й точки.

    static double polygonArea(double X[], double Y[], int n)

    {

        // Инициализируем область

        double area = 0.0;

      

        // Рассчитать значение формулы шнурка

        int j = n - 1;

        for (int i = 0; i < n; i++)

        {

            area += (X[j] + X[i]) * (Y[j] - Y[i]);

              

            // j - предыдущая вершина i

            j = i; 

        }

      

        // Возвращаем абсолютное значение

        return Math.abs(area / 2.0);

    }

      

    // Драйвер программы

    public static void main (String[] args) 

    {

        double X[] = {0, 2, 4};

        double Y[] = {1, 3, 7};

  

        int n = X.length;

        System.out.println(polygonArea(X, Y, n));

    }

}

  

  
// Этот код добавлен
// Никита Тивари.

python3

# Python 3 программа для оценки
# площадь многоугольника, использующего
# формула шнурка

  
# (X [i], Y [i]) - координаты i-й точки.

def polygonArea(X,Y, n) :

  

    # Инициализировать область

    area = 0.0

    

    # Рассчитать значение формулы шнурка

    j = n - 1

    for i in range( 0, n) :

        area = area + (X[j] + X[i]) * (Y[j] - Y[i])

        j = # j - предыдущая вершина i

      

      

    # Вернуть абсолютное значение

    return abs(area // 2.0)

  

    
# Программа драйвера для проверки вышеуказанной функции

X = [0, 2, 4]

Y = [1, 3, 7]

  

n = len(X)

print(polygonArea(X, Y, n))

  

  
# Этот код добавлен
# Никита Тивари.

C #

// C # программа для оценки площади
// формула многоугольника

using System;

  

class GFG {

  

    // (X [i], Y [i]) - координаты

    // из моей точки.

    static double polygonArea(double []X,

                       double []Y, int n)

    {

        // Инициализируем область

        double area = 0.0;

      

        // Рассчитать стоимость шнурка

        // формула

        int j = n - 1;

        for (int i = 0; i < n; i++)

        {

            area += (X[j] + X[i]) * 

                        (Y[j] - Y[i]);

              

            // j - предыдущая вершина i

            j = i; 

        }

      

        // Возвращаем абсолютное значение

        return Math.Abs(area / 2.0);

    }

      

    // Драйвер программы

    public static void Main () 

    {

        double []X = {0, 2, 4};

        double []Y = {1, 3, 7};

  

        int n = X.Length;

        Console.WriteLine(

                 polygonArea(X, Y, n));

    }

}

  
// Этот код предоставлен anuj_67.

PHP

<?php
// PHP-программа для оценки площади
// полигон по формуле шнурка

  
// (X [i], Y [i]) - координаты
// из моей точки.

function polygonArea( $X, $Y, $n)

{

      

    // Инициализируем область

    $area = 0.0;

  

    // Рассчитать значение

    // формула шнурка

    $j = $n - 1;

    for ( $i = 0; $i < $n; $i++)

    {

        $area += ($X[$j] + $X[$i]) * 

                 ($Y[$j] - $Y[$i]);

                   

        // j - предыдущая вершина i

        $j = $i

    }

  

    // Возвращаем абсолютное значение

    return abs($area / 2.0);

}

  

    // Код драйвера

    $X = array(0, 2, 4);

    $Y = array(1, 3, 7);

    $n = count($X);

    echo polygonArea($X, $Y, $n);

  
// Этот код предоставлен anuj_67.
?>


Выход :

2

Рекомендуемые посты:

Программа для поиска области треугольника

0.00 (0%) 0 votes