0 / 0 / 1
Регистрация: 19.01.2014
Сообщений: 9
|
|
1 | |
"Точность вычислений" или "Элементарная погрешность"19.01.2014, 14:35. Показов 662. Ответов 5
Метки нет Все метки)
(
Всем привет!
Решаю задачку (Задача А - во вложениях), где даны координаты вершин треугольника, и нужно найти наибольший угол в нем. Ну так вот. Это код моей программы. Она работает правильно. Но иногда возникает проблема с точностью вычислений: например, когда вводишь координаты 0;0, 2;2, 4;4 (лежат на одной прямой), то вместо 180 программа выводит очень необычный ответ: 179.9999987926. В чем дело, я так и не понял. В интернете ничего дельного не нашел... Возможно, это как-то связано с функциями sqrt() и acos(). Как вы думаете, в чем проблема?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
19.01.2014, 14:35 | |
Ответы с готовыми решениями:
5
В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) Вставить пробел после каждого символа "." "," "!" или "?", если за этими символами не следует пробел |
52 / 45 / 18
Регистрация: 06.01.2013
Сообщений: 626
|
|
19.01.2014, 14:42 | 2 |
это не проблема, а результат округлений в ответах, например 1/3 запишется как 0.3333 и при обратном действии вернет 0.9999
0
|
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
|
|
19.01.2014, 15:02 | 3 |
Нет ничего необычного, эти функции(тот же acos()) расчитываются до определенной точности, где-то до -15 степени.
0
|
0 / 0 / 1
Регистрация: 19.01.2014
Сообщений: 9
|
|
19.01.2014, 15:10 [ТС] | 4 |
И как же быть?? Желательно, чтобы программа выводила правильный ответ)
Может быть есть какой-нибудь способ??
0
|
52 / 45 / 18
Регистрация: 06.01.2013
Сообщений: 626
|
|
19.01.2014, 15:13 | 5 |
округляйте до нужного знака
0
|
0 / 0 / 1
Регистрация: 19.01.2014
Сообщений: 9
|
|
19.01.2014, 15:26 [ТС] | 6 |
Хех) В данной задаче точность равна 10^-8. То есть ответ программы считается неверным))
0
|
19.01.2014, 15:26 | |
Помогаю со студенческими работами здесь
6
Введите предложение, в данной строке нужно заменить все слова "погрешность" на "ошибка" Дан текст, хранящийся в текстовом файле f, каждый символ которого может быть малой буквой, цифрой или одним из знаков "+", "-", "*".
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |