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

Максимально быстрый вариант вычисления sinf/cosf - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Простое создание строки из объектов разных типов данных http://www.cyberforum.ru/cpp-beginners/thread1234710.html
Всем доброго времени суток. Создал класс, который (по моему мнению) сделает более удобным создание строк и их передачу в функции, принимающие строки. Посоветуйте, как можно (если нужно) его улучшить....
C++ Правильно ли в приведенном примере реализовано выделение и очищение памяти под двумерный вектор Скажите правильно ли я выделяю и очищаю память под двухмерный вектор class A { private: std::vector< std::vector<int> >* vec; public: A() http://www.cyberforum.ru/cpp-beginners/thread1234703.html
C++ Циклы: вычисление синуса
Приступил к циклам. Задание такое: Как известно, функция sin(x) может может быть вычислена в виде ряда sin(x)=x-x^3/3!+x^5/5!-...=\sum_{n=0}^{\propto }(-1)^n*(x^(2n+1))/(2n+1)! На практике при...
Boost::regex не могу сформировать ссылку на паттерн при поиске C++
Необходимо найти 2 повторяющихся заголовка и объединить некоторое содержимое через replace. Хотел создать выражение для поиска: ^(prefix=)(.*)(\n)(*)($2) Вот только ссылка $2 не возвращает...
C++ Инициализация переменных - некорректно работает пример из книги http://www.cyberforum.ru/cpp-beginners/thread1234669.html
Взял задачку из книги Г.Шилда. Должно показывать 1 3 6 10 15. Но у меня выдает 1 2 3 4 5. Набрал всё точь в точь с книги, в чём проблема, кто подскажет? #include <iostream> #include <conio.h>...
C++ Не работает цикл for #include <iostream> #include <conio.h> using namespace std; int main() { int x; for(x=0; x<10; x++); cout << x << " "; _getch(); return 0; } подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17812 / 6022 / 388
Регистрация: 30.03.2009
Сообщений: 16,542
Записей в блоге: 26
28.07.2014, 11:17
Цитата Сообщение от VTsaregorodtsev Посмотреть сообщение
На всех процах х86-платформы, начиная собственно с родителя (вернее, с сопроцессора 8087), вычисляются отдельными процессорными командами
Чисто на всякий случай. Если программа короткая, то она совсем необязательно работает быстро. Программа из одной аппаратной операции fsin будет работать 200 тактов, а не 1, как может показаться на первый взгляд. Что явно медленнее, чем вычисление короткого ряда

Цитата Сообщение от Robesper3411 Посмотреть сообщение
я вот только все равно не понял - в чем суть задания. Что должно быть "на входе", а что - "на выходе". Вычислять синус и косинус - это без проблем. Но, что сделать нужно здесь?!
Здесь нужно вычислять синус и косинус. Но сделать это быстро. Т.е. быстрее, чем стандартная реализация в библиотеке. А быстрее она должна работать за счёт того, что будет работать с меньшей точностью. Как уже писалось, один из вариантов быстрых вычислений - это вычислить заранее значения синусов в N точках (например, создать таблицу синусов для углов 0, 1, 2, ... 90 градусов). Затем при вызове синуса, например, от 37.3 градуса, взять из таблицы готовое заранее вычисленное значение для 37 градусов. Оно будет не очень точным, зато быстро
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru