Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/14: Рейтинг темы: голосов - 14, средняя оценка - 4.71
61 / 1 / 1
Регистрация: 14.11.2010
Сообщений: 66

Создание библиотеки

18.01.2012, 20:56. Показов 2957. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно создать отдельную библиотеку. Чтобы в программе можно было просто включать математические функции arcsin, arccos, arctg, arcctg.

Нада делать математические функции через разложения в ряды.

Нарыл в интернети код на j2me.

arcsin:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
private double Marcsin(double x0){
    double x=x0;
    if (x0<0){x=-x0;}
    double y=x;
    int n=1;
    double sn=x;
    while (sn>1E-16){
            sn=sn*(2+1.0/n)*0.5*x*x;
            y=y+sn/(2*n+1)/(2*n+1);
            n=n+1;
    }
    if (x0<0){y=-y;}
    return y;
}
arctg:
Java
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
private double MArctg(double x0) {
  int sp=0;
  double x,x2,y;
  x=x0;
  if(x<0) {x=-x;}
  if(x>1) {x=1.0/x;}
  //Уменьшаем интервал области аргумента
  while(x>0.2617993877991495) {
    sp++; //Вспомогательный счетчик шагов
    x=(x*1.732050807569-1)/(x+1.732050807569);
  }
  //Вычисляем ряд Тейлора
    y=x;
    int n=1;
    double sn=x;
    while (sn>1E-16){
            sn=sn*(2+1.0/n)*0.5*x*x;
            y=y+sn/(2*n+1)/(2*n+1);
            n=n+1;
    }
 
  //Смещаем все на pi/6 необходимое число раз
  y=y+sp*0.523598775598
 
  if(x0>1) a=0.2617993877991495-a;
  if(x0<0) y=-y;
 
  return y;
}
Миниатюры
Создание библиотеки  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.01.2012, 20:56
Ответы с готовыми решениями:

Создание библиотеки
Есть репозит некого dbc - csv конвертера (https://github.com/Evrin-aus-dem-Norden/DbCsvConverter) Суть конвертера, декадирует файлы .dbc...

Создание библиотеки
Имеются проекты.. Как из них сделать библиотеки и подключить к своей программе? В инете что находил - не прокатывало, т.к. там написано как...

Создание библиотеки .h
Я только начал учить программированию, и меня заинтересовало как создать свою библиотеку с расширением .h! Подскажите с чего начать...

4
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
19.01.2012, 11:57
RayanBest, и в чем, собственно, заключается Ваш вопрос?
0
61 / 1 / 1
Регистрация: 14.11.2010
Сообщений: 66
19.01.2012, 21:47  [ТС]
fasked мне нужны готовая библиотека, или хоть несколько с её готовых функцый на С++.
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
19.01.2012, 21:51
Цитата Сообщение от RayanBest Посмотреть сообщение
или хоть несколько с её готовых функцый на С++.
В стандартной библиотеке есть asin, acos, atan.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
19.01.2012, 21:54
ТС нужны не стандартные ф-ии а самодельные, через разложения всякие. похоже что этот код легко на плюсы перепишется. вот собственно почти без изменений код на плюсах:

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
40
41
42
43
44
45
46
47
48
49
50
51
52
double Marcsin(double x0)
{
    double x=x0;
    if (x0<0){x=-x0;}
    double y=x;
    int n=1;
    double sn=x;
    while (sn>1E-16){
            sn=sn*(2+1.0/n)*0.5*x*x;
            y=y+sn/(2*n+1)/(2*n+1);
            n=n+1;
    }
    if (x0<0){y=-y;}
    return y;
}
 
double MArctg(double x0) {
  int sp=0;
  double x,x2,y;
  x=x0;
  if(x<0) {x=-x;}
  if(x>1) {x=1.0/x;}
  //Уменьшаем интервал области аргумента
  while(x>0.2617993877991495) {
    sp++; //Вспомогательный счетчик шагов
    x=(x*1.732050807569-1)/(x+1.732050807569);
  }
  //Вычисляем ряд Тейлора
    y=x;
    int n=1;
    double sn=x;
    while (sn>1E-16){
            sn=sn*(2+1.0/n)*0.5*x*x;
            y=y+sn/(2*n+1)/(2*n+1);
            n=n+1;
    }
 
  //Смещаем все на pi/6 необходимое число раз
  y=y+sp*0.523598775598;
 
 
  if(x0>1) a=0.2617993877991495-a; // хз что такое а. намерное мебмер класса.
 
  if(x0<0) y=-y;
 
  return y;
}
 
int main()
{
  return 0;
}

есть ошибка из-за неизвестной переменной а, которая наверно мембер класса и в самплах отсутствует. в общем попробуйте это все в свое IDE скопировать и собрать. по ходу появления ошибок компиляции просто фиксите их.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.01.2012, 21:54
Помогаю со студенческими работами здесь

Создание dll библиотеки c++
Есть проект, где много заголовочных файлов. Как собрать dll библиотеку так, чтобы потом использовать только 1 заголовочный файл, а...

Создание статической библиотеки
Вообщем надо создать статическую библиотеку lib для классов. Классов очень много и они разбиты по хедерам .h . Я создал новый проект в...

Создание библиотеки подпрограмм c++
Доброго времени суток, буду весьма благодарен за помощь в создании библиотеки подпрограмм... Подготовка: 1. Подготовить библиотеку...

Создание dll библиотеки из классов
Добрый день. У меня есть созданные классы, каждый класс в своем .cpp и .h. Как из всего этого сделать dll библиотеку? Насколько я поняла...

Создание статической библиотеки lib
Привет всем решил попробовать создать статическую библиотеку и связать её с каким-нибудь проектом.Для начала решил научиться, а потом...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru