Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sergey_viper
9 / 3 / 1
Регистрация: 15.04.2012
Сообщений: 180
#1

Математические функции при работе с треугольником и прямоугольником: исправить код - C++

11.10.2012, 21:47. Просмотров 538. Ответов 8
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <math.h>
using namespace std;
 
int main()
{
    double a,b,c,d,e;
    cout << "Enter the sides of the triangle (a>b a>c)" << endl;
    cin >> a>> b>> c;
    cout << "Enter sides of the rectangle" << endl;
    cin >> d>> e;
    acos = ((pow(b,2) + pow(c,2) - pow(a,2))) / (2*b*c);
    cout << acos;
    return 0;
}
Выдаёт:
C:\Users\Viper\Documents\labs\3\3\triniagle\main.cpp||In function 'int main()':|
C:\Users\Viper\Documents\labs\3\3\triniagle\main.cpp|12|error: assignment of function 'double acos(double)'|
C:\Users\Viper\Documents\labs\3\3\triniagle\main.cpp|12|error: cannot convert 'double' to 'double(double)' in assignment|
C:\Users\Viper\Documents\labs\3\3\triniagle\main.cpp|13|warning: the address of 'double acos(double)' will always evaluate as 'true'|
||=== Build finished: 2 errors, 1 warnings ===|
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2012, 21:47     Математические функции при работе с треугольником и прямоугольником: исправить код
Посмотрите здесь:

Повреждена куча при работе с динам. памятью. Почему? Как исправить? C++
Ошибка при работе функции вызванной из SWITCHa C++
При выполнении задания предусмотреть выбор вида функции (исправить код) C++
Математические функции С++ C++
C++ Вычислить значение функции(исправить готовый код)
C++ Ошибка при работе функции в классе
C++ Функции с переменным количеством параметров, stdarg.h. Исправить код
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
11.10.2012, 21:51     Математические функции при работе с треугольником и прямоугольником: исправить код #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <math.h>
using namespace std;
 
int main()
{
    double a,b,c,d,e;
    double acos;
    cout << "Enter the sides of the triangle (a>b a>c)" << endl;
    cin >> a>> b>> c;
    cout << "Enter sides of the rectangle" << endl;
    cin >> d>> e;
    acos = ((pow(b,2) + pow(c,2) - pow(a,2))) / (2*b*c);
    cout << acos;
    return 0;
}
acos забыл объявить.
sergey_viper
9 / 3 / 1
Регистрация: 15.04.2012
Сообщений: 180
11.10.2012, 21:52  [ТС]     Математические функции при работе с треугольником и прямоугольником: исправить код #3
Если бы знал ещё
Спасибо вам
John Prick
758 / 691 / 124
Регистрация: 27.07.2012
Сообщений: 1,980
Завершенные тесты: 3
11.10.2012, 21:54     Математические функции при работе с треугольником и прямоугольником: исправить код #4
И не называй её acos, потому что есть такая же функция и не сможешь её вызывать в таком случае.
sergey_viper
9 / 3 / 1
Регистрация: 15.04.2012
Сообщений: 180
11.10.2012, 22:20  [ТС]     Математические функции при работе с треугольником и прямоугольником: исправить код #5
Цитата Сообщение от John Prick Посмотреть сообщение
И не называй её acos, потому что есть такая же функция и не сможешь её вызывать в таком случае.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
   {
    double a,b,c,d,e,f,alpha,alpha2;
    cout << "Enter the sides of the triangle |a>b a>c|" << endl;
    cin >> a>> b>> c;
    cout << "Enter sides of the rectangle" << endl;
    cin >> d>> e;
    f = ((pow(b,2) + pow(c,2) - pow(a,2))) / (2*b*c);
    alpha = acos(f);
    cout << alpha<<endl;
    alpha2 = 180 - alpha;
    cout << alpha2;
    return 0;
}
Всё равно что-то не работает. Я ошибаюсь в вычислении арккосинуса. Покажите как правильно.
Нужно найти градусную меру угла (альфа) косинус которого равен ((pow(b,2) + pow(c,2) - pow(a,2))) / (2*b*c);
John Prick
758 / 691 / 124
Регистрация: 27.07.2012
Сообщений: 1,980
Завершенные тесты: 3
11.10.2012, 22:23     Математические функции при работе с треугольником и прямоугольником: исправить код #6
Углы тут повсеместно в радианах. В градусы в ручную переводи.
sergey_viper
9 / 3 / 1
Регистрация: 15.04.2012
Сообщений: 180
11.10.2012, 23:38  [ТС]     Математические функции при работе с треугольником и прямоугольником: исправить код #7
Цитата Сообщение от John Prick Посмотреть сообщение
Углы тут повсеместно в радианах. В градусы в ручную переводи.
Точно! А вот об этом забыл.

Добавлено через 1 час 13 минут
Цитата Сообщение от John Prick Посмотреть сообщение
Углы тут повсеместно в радианах. В градусы в ручную переводи.
Может сможете помочь?
Мой потенциал иссяк на сегодня
Кликните здесь для просмотра всего текста
Даны a, b, c, d, e – вещественные числа. Выяснить, можно ли треугольник со сторонами a, b, c поместить внутри прямоугольника со сторонами d, e.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <math.h>
using namespace std;
 
int main()
{
    double a,b,c,d,e,f,h,g,o,alpha,alpha2;
    cout << "Enter the sides of the triangle |a>b a>c|" << endl;
    cin >> a>> b>> c;
    cout << "Enter sides of the rectangle" << endl;
    cin >> d>> e;
    alpha = acos(((pow(b,2) + pow(c,2) - pow(a,2))) / (2*b*c));
    alpha2 = 3.141592653 - alpha;
    h = cos(alpha2) * b;
    cout << alpha2<<endl<<alpha<<endl;
    cout << alpha<<endl;
        if (cos(alpha2) < 0)
            {
                if ((a>d || a>e) && (b>d || b>e) && (c>d || c>e))
                cout << "1DA"<<endl;
                else
                cout << "1NET"<<endl;
            }
            else
                {
                cout << h<<endl;
                o = c+h;
                cout << o<<endl;
                    if (o<e && o<d)
                    {g = sin(alpha) * b;
                        if (g<e && g<d)
                            {cout << "2DA!";
                            cout << g<<endl;}
                            else {cout << "2NET!";}
                            cout << g<<endl;}
                    else cout << "3NET!";}
 
    return 0;
}
John Prick
758 / 691 / 124
Регистрация: 27.07.2012
Сообщений: 1,980
Завершенные тесты: 3
11.10.2012, 23:54     Математические функции при работе с треугольником и прямоугольником: исправить код #8
Цитата Сообщение от sergey_viper Посмотреть сообщение
Может сможете помочь?
Ну, батенька, С++ тут не причём, ежели математику из 5го класса не помнить
градус = радиан * 180 / пи
Добавлено через 3 минуты
Цитата Сообщение от sergey_viper Посмотреть сообщение
Выяснить, можно ли треугольник со сторонами a, b, c поместить внутри прямоугольника со сторонами d, e.
Я так подозреваю, что если бОльшая сторона треугольника меньше меньшей стороны прямоугольника - то можно. Найди max(max(a,b),c) и min(d,e) и сравни.

Добавлено через 7 минут
Хотя не, не прав. Могут быть и другие случаи.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2012, 08:59     Математические функции при работе с треугольником и прямоугольником: исправить код
Еще ссылки по теме:

Математические функции C++
Почему выдает ошибку при работе с большим файлом, напишите как исправить ? C++
Исправить ошибки в работе функции C++
C++ Табулирование функции (исправить код программы)
Исправить ошибки при работе с функцией rand C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
sergey_viper
9 / 3 / 1
Регистрация: 15.04.2012
Сообщений: 180
12.10.2012, 08:59  [ТС]     Математические функции при работе с треугольником и прямоугольником: исправить код #9
Да тут проблема вся то в тупоугольном треугольнике
Я вычислил угол и тут понеслось Сдать к субботе, придётся повозиться)
Yandex
Объявления
12.10.2012, 08:59     Математические функции при работе с треугольником и прямоугольником: исправить код
Ответ Создать тему
Опции темы

Текущее время: 06:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru