Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
TonyM
1 / 1 / 0
Регистрация: 14.07.2011
Сообщений: 7
1

sin 180 градусов и cout

15.07.2011, 20:55. Просмотров 1795. Ответов 4
Метки нет (Все метки)

Делал задачки из учебника по С++ и столкнулся с такой штукой: cout выводит sin 180 градусов примерно так : 1.4653е-007, а printf(%lf) выводит 0.000. Почему так происходит ?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2011, 20:55
Ответы с готовыми решениями:

Разворот одномерного массива на 180 градусов
можете помочь с созданием функции разворота последовательности на 180 градусов,...

Повернуть матрицу на 90, 180, 270 градусов
Дана квадратная матрица порядка M. Повернуть ее на 90, 180 и 270 градусов в...

Развернуть одномерный массив на 180 градусов
Развернуть одномерный массив на 180 градусов без использования if.

Переписать слова в файл и развернуть их на 180 градусов
Дан текстовый файл. Переписать в другой файл все строки файла, развернув в них...

Поворот матрицы на 180 градусов по часовой стрелке
Нужна программа,которая повернет квадратную матрицу из N строк и N столбцов на...

4
grizlik78
Эксперт С++
2016 / 1497 / 206
Регистрация: 29.05.2011
Сообщений: 3,117
15.07.2011, 20:59 2
Потому, что они используют разный формат представления числа. Попробуйте printf("%lg")
%lf выводит, если не ошибаюсь, 6 знаков после точки по умолчанию. А они все равны 0.
0
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
16.07.2011, 08:53 3
Цитата Сообщение от grizlik78 Посмотреть сообщение
А они все равны 0
Разве?
http://www.google.ru/search?q=sin(180)
У меня такой код нормально выводит
C++
1
std::cout << sin(180.);
0
grizlik78
Эксперт С++
2016 / 1497 / 206
Регистрация: 29.05.2011
Сообщений: 3,117
16.07.2011, 08:55 4
diagon, ты про что?
У тебя ж 180 радиан, а не градусов.
0
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
16.07.2011, 09:09 5
А, ну да, просмотрел...
Тогда можно примерно так
В setprecision указываете точность
C++
1
2
3
4
5
6
#include <iostream>
#include <cmath>
#include <iomanip>
int main(){
    std::cout << std::fixed << std::setprecision(16) << sin(180 * (M_PI / 180));
}
0
16.07.2011, 09:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.07.2011, 09:09

Циклы: печать таблицы величин углов от 0 до 180 градусов
Помогите, пожалуйста, необходимо написать программу для печати таблицы величин...

Повернуть квадратную матрицу на 180 градусов в положительном направлении
Программа выводит не перевёрнутый массив, а начальный : #include &lt;iostream&gt;...

Поменять элементы массива местами (развернуть его на 180 градусов)
Поменять элементы массива местами(первый с последним, второй с предпоследним и...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru