Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/12: Рейтинг темы: голосов - 12, средняя оценка - 4.83
 Аватар для seruy-t
2 / 2 / 2
Регистрация: 21.08.2010
Сообщений: 216

sin и BCB6

17.09.2010, 19:11. Показов 2559. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, решил побаловаться в С++, написать программу чтоби считала синус и косинус

C++
1
2
3
4
5
6
7
8
9
10
void __fastcall TForm1::Button1Click(TObject *Sender)
{
double A,SinA,CosA,B;
A=StrToFloat(Edit1->Text);
SinA=sin(A);
CosA=cos(A);
Memo1->Clear();
Memo1->Lines->Add("Sin=" +FloatToStr(SinA));
Memo1->Lines->Add("Cos=" +FloatToStr(CosA));
}
Но, считает она не правильно
Вопрос: Почему ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.09.2010, 19:11
Ответы с готовыми решениями:

Не устанавливается EhLib 3.6 на BCB6
Добрый день, возникла проблема с установкой EhLib 3.6 на BCB6. Скачал отсюда http://www.ehlib.com/RUS/registration.htm архив EhLib 3.6,...

Не работают методы в BCB6
- Здравствуйте все Форумчане! Вот фрагмент кода: // ......... void __fastcall TTmr::ImageMouseDown(TObject* Sender, ...

Компонент для BCB6
Доброго времени дня! Посоветуйте компонент, который представляет собой обычную кнопку-выключатель, с возможностью менять цвет при...

5
 Аватар для Lelik-pahan
1703 / 899 / 207
Регистрация: 25.11.2009
Сообщений: 1,850
17.09.2010, 19:31
потому, что по умолчания функция считает не по градусам, а по радианам. Чтоб получить правильный ответ пиши:
C++
1
SinA=sin(A*180/M_PI)
где M_PI - константа, объявленная в math.h, обозначающая число Пи
1
 Аватар для seruy-t
2 / 2 / 2
Регистрация: 21.08.2010
Сообщений: 216
17.09.2010, 19:40  [ТС]
добавил, появился следующий трабл
ввожу 90, а прога
Cos=6,12303176911189E-17
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
17.09.2010, 19:46
Это из-за того, что существует обрезка значения константного числа Пи.

Пробуйте форматированный вывод:
C++
1
2
3
4
5
6
7
8
9
10
double vGrad = 90.0;
double vRad = vGrad * M_PI / 180.0;
double vSin = sin(vRad);
double vCos = cos(vRad);
 
char Output[9];
sprintf(Output,"%4.4lf",vSin);
ShowMessage(Output);
sprintf(Output,"%4.4lf",vCos);
ShowMessage(Output);
И не забудьте:
C++
1
2
#include <math.h>
#include <iostream.h>
0
 Аватар для Lelik-pahan
1703 / 899 / 207
Регистрация: 25.11.2009
Сообщений: 1,850
17.09.2010, 19:49
виноват. неправильно написал
C++
1
SinA=sin(90*M_PI/180);
не *180/Pi, как я написал а выше, а наооборот
1
 Аватар для seruy-t
2 / 2 / 2
Регистрация: 21.08.2010
Сообщений: 216
18.09.2010, 10:47  [ТС]
Спасибо за ответы !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.09.2010, 10:47
Помогаю со студенческими работами здесь

Переход BCB6 -> XE4
Здравствуйте! Подскажите, плиз, перетащил свой старый проект из Builder 6 в Rad Builder XE4. ilink32 выкинул кучу ошибок в входных...

Индикатор загруженности процессора (BCB6)
Всем привет, есть аналог диспетчера задач, но на нём нету данного индикатора, который присутствует в стандартном диспетчере. Каким образом...

Перенос проекта из BCB6 в ХЕ2
Уважаемые! Имеется проблема в компиляции проекта из BCB6 на стадии линковки в ХЕ2: Error: Unresolved external 'FT_Write' referenced...

Где установить модель памяти в BCB6?
где в C++ Builder 6 модель памяти установить?

BCB6; БД - как защитить таблицы данных?
Такая проблема - для включения таблиц данных в базу мы определяем Alias область, размещаем там наши таблички (я их создаю на драйвере...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru