Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.11.2016, 20:24   #1
9398
Пользователь
 
Регистрация: 12.02.2016
Сообщений: 10
По умолчанию Поиск средней площади треугольника

Задание звучит так:
Создать класс треугольник, члены класса - длины 3-х сторон. Предусмотреть в классе методы проверки существования треугольника, вычисления и вывода сведений о фигуре – длины сторон, углы, периметр, площадь. Написать программу, демонстрирующую работу с классом: дано N треугольников, найти среднюю площадь для N треугольников.
Так вот я создал класс, а как реализовать поиск средней площади - не знаю. Помогите, если знаете как это можно реализовать.
Ниже прикрепляю имеющийся код:
Код:
#include "stdafx.h"
#include<iostream>
#include <cmath> 
#include <conio.h>
#define PI 3.14159265
using namespace std;

class Treug
{
protected:
	float a, b, c; //Три стороны
public:
	Treug()
	{
		cout << "Введите сторону AB треугольника:\n";
		while(a<=0)
			cin >> a;
		cout << "Введите сторону AC треугольника:\n";
		while (b <= 0)
			cin >> b;
		cout << "Введите сторону BC треугольника:\n";
		while (c <= 0)
			cin >> c;
		cout << "\n\n\n";
		Exist();
		PerimetrArea();
		Ugol();
	}
	float Exist()//cуществование
	{
		float d = a + b;
		float e = a + c;
		float f = b + c;
		if (d > c && e > b && f > a)
		{
			cout << "\tТреугольник существует\n";
			cout << "Сторона АВ="<<a<<endl;
			cout << "Сторона АС="<<b << endl;
			cout << "Сторона ВС="<<c << endl;
		}
		else cout << "Треугольник не существует\n";
		return 0;
	}
	float PerimetrArea()
	{
		float p = a + b + c;
		cout << "Периметр треугольника=" << p<<endl;
		float pp = p / 2;
		float s = sqrt(pp*(pp-a)*(pp-b)*(pp-c));
		cout << "Площадь треугольника=" << s << endl;
		return s;
	}
	float Ugol()
	{
		float A, Ap, B, Bp, C, Cp;
		Ap= acos((pow(b, 2) + pow(c, 2) - pow(a, 2)) / (2 * b*c));
		Bp= acos((pow(a, 2) + pow(c, 2) - pow(b, 2)) / (2 * a*c));
		Cp = acos((pow(a, 2) + pow(b, 2) - pow(c, 2)) / (2 * a*b));
		A = (Ap)*180/PI;
		B = (Bp) * 180 / PI;
		C = (Cp) * 180 / PI;
		cout << "Угол АСВ="<<A<<" градусов\n";
		cout << "Угол АВС="<<B<<" градусов\n";
		cout << "Угол ВАС="<<C<<" градусов\n";
		return A, B, C;
	}
};

int main()
{
	setlocale(LC_CTYPE, "RUS");
	int n, m;
	cout << "Введите количество обычных треугольников:\n";
	do
	{
		cin >> n;
	} while (n <= 0);
	Treug *g = new Treug[n];
		_getch();
    return 0;
}
9398 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать программу вычисления площади многоугольника используя формулу для вычисления площади треугольника в качестве подпрограммы сердце Паскаль, Turbo Pascal, PascalABC.NET 0 24.12.2012 18:21
Задача о площади треугольника Kiss31 Общие вопросы C/C++ 5 13.10.2012 08:03
процедуры и функции - возможно ли построение треугольника по длинам сторон, вычисление площади треугольника по длинам сторон kazbek1 Паскаль, Turbo Pascal, PascalABC.NET 2 18.05.2012 10:38
определение наибольшей площади треугольника fasty Помощь студентам 2 07.12.2011 20:07
Вычисление площади треугольника Nyuta555 Помощь студентам 10 07.10.2009 16:32