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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2012, 19:56   #1
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию Трудность в нахождении радиуса и площадь треугольника.С++.

Задали координаты вершин треугольника (х1, у1), (х2, у2), (х3, у3). Вычислить его площадь и радиус окружности, описанной около треугольника.Расчет необходимых геометрических величин оформить в виде функций.

Вот почти все сделал но выдает неправильный результат.Буду благодарен если вы посмотрите и поможете))

Header File "area.h"
Код:
int area (int s, int p, int a, int b, int c)
{
  return  sqrt(p/2*(p/2 - a)*(p/2 - b)*(p/2 - c));
}
Header File "radius.h"

Код:
int radius (int s, int a, int b, int c)

{
  return  a*b*c / 4*s;
}
Source File:
Код:
#include <iostream>
#include <cmath>
#include "area.h"
#include "radius.h"
using namespace std;

int area (int, int, int, int, int);
int radius (int, int, int, int);
void main()

{

 int x1, y1, x2, y2, x3, y3, a, b, c, S, p, R;

 cout<<"Please input coordinates of first point:\n";

 cout <<"x1:";
 cin >>x1;

 cout <<"y1:";
 cin >>y1;

 cout <<"Please input coordinates of second point:\n";

 cout <<"x2:";
 cin >>x2;

 cout <<"y2:";
 cin >>y2;

 cout << "Please input coordinates of third point:\n";

 cout << "x3:";
 cin >>x3;

 cout <<"y3:";
 cin >>y3;

 a=sqrt(pow((x2-x1),2)+pow((y2-y1),2));
 b=sqrt(pow((x3-x2),2)+pow((y3-y2),2));
 c=sqrt(pow((x1-x3),2)+pow((y1-y3),2));
 p=a+b+c;

 cout << "The area of triangle is:" << area(S, p, a, b, c) << endl;;
 cout << "The radius of triangle is:" << radius(S, a, b, c) << endl;

 cin.get();
 cin.get();

}
DIQUON вне форума Ответить с цитированием
Старый 30.11.2012, 20:19   #2
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,714
По умолчанию

А что, везде целочисленные значения?
Благими намерениями устлана дорога на programmersforum.ru
MihalNik вне форума Ответить с цитированием
Старый 30.11.2012, 20:24   #3
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

Даже если поменять все типы на дабл радиус выдает неверно((
DIQUON вне форума Ответить с цитированием
Старый 30.11.2012, 20:35   #4
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,714
По умолчанию

В таких случаях проверяют параметры неверной функции, вывод на терминал если так не видно ошибки
Благими намерениями устлана дорога на programmersforum.ru
MihalNik вне форума Ответить с цитированием
Старый 30.11.2012, 20:36   #5
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

всмысле?что вы имеете ввиду?если не трудно киньте код с вашими корректировками
DIQUON вне форума Ответить с цитированием
Старый 30.11.2012, 20:37   #6
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Код:
a*b*c / 4*s
Моё любимое занятие: ставим скобки
Код:
(((a*b)*c) / 4)*s
Ещё есть вопросы - почему неправильно считает?
Abstraction вне форума Ответить с цитированием
Старый 30.11.2012, 20:42   #7
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

все равно не правильно считает,выдает -468 за радиус.

и другие минусовые числа только намного больше за -468))

Последний раз редактировалось Stilet; 30.11.2012 в 20:47.
DIQUON вне форума Ответить с цитированием
Старый 30.11.2012, 20:49   #8
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,714
По умолчанию

cout << S << " " << a << " " << b << " " << c
Благими намерениями устлана дорога на programmersforum.ru
MihalNik вне форума Ответить с цитированием
Старый 30.11.2012, 20:52   #9
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

хм,почему то а считает не правильно, помогите пожалуйста найти ошибку!
DIQUON вне форума Ответить с цитированием
Старый 30.11.2012, 20:56   #10
DIQUON
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 122
По умолчанию

Точнее S считает не правильно,с а б с все норм)
DIQUON вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дано 3 точки своими координатами х,у. Будет ли они вершинами треугольника. Если да - найти периметр и площадь треугольника Arhi555 Паскаль, Turbo Pascal, PascalABC.NET 2 11.09.2012 17:46
Площадь треугольника Lana44 Общие вопросы C/C++ 3 05.02.2012 17:34
Площадь треугольника fasty Помощь студентам 1 06.12.2011 23:27
площадь треугольника в pascal ank1ne Паскаль, Turbo Pascal, PascalABC.NET 3 20.09.2011 12:10
площадь треугольника х-prof Паскаль, Turbo Pascal, PascalABC.NET 3 16.06.2011 13:29