嘿所以我设法找到了我编码的一些图形数学中的问题,显然当我到达这行代码时:float test3= asin(test2);在哪里test2= 0.017409846.
根据我的理解,'asin'是'arc sin',这是'反向罪'(我想要的)然而这行代码的结果是test3 = 0.017410725.当把它插入我的计算器时,test2的反正弦是.997561.
为什么不asin工作?谢谢!
我目前正在做一个我已经做了近一年的个人项目.我正在尝试将其移植到Windows环境中,该环境已成功完成.因为我试图尽快将Windows版本发布给人们,所以我决定继续在Windows中开发,同时尝试添加新功能并获取已存在数月的错误.虽然最近尝试添加严重依赖于三角函数的功能,但我发现无论我传递的参数如何,奇怪的是,所有3个三角函数都返回相同的值(1072693887).可以想象,这导致了系统中一些相当奇怪的错误.
我有math.h包含,据我所知,没有其他文件包含此功能.(也许有一个调试器命令来查找符号定义的位置?我找不到任何这样的东西,但也许我错过了一些东西.)我试过去别的地方搜索并在Google上搜索,但无济于事......
有没有其他人之前听说过这个问题,或者知道如何修复它?
我有整个程序,除了它总是从较大的数字中减去较小的数字的部分.我一直试图找到它,但我找不到任何可以帮助我的东西.这是我需要帮助的唯一部分.
这是代码.
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
//function prototype
int getRandomNumber(int lower, int upper);
int main()
{
//declare variables
int smallest = 0;
int largest = 0;
int num1 = 0;
int num2 = 0;
int correctAnswer = 0;
int userAnswer = 0;
//initialize rand function
srand(static_cast<int>(time(0)));
cout << "Smallest Integer: ";
cin >> smallest;
cout << "Largest Integer: ";
cin >> largest;
cout << endl;
for (int x = 1; x < 6; x += …Run Code Online (Sandbox Code Playgroud) 我是C++的新手,我正在使用Bjarne Stroustrup 撰写的"编程原则和实践使用C++"一书(我将在未来的学校课程中使用这本书).本书中的代码示例使用std_lib_facilities.h.在某些时候,本书会调用该函数square(),但是当我这样做时,我会收到以下错误:
error C3861: 'square': identifier not found
Run Code Online (Sandbox Code Playgroud)
另一方面,我能够使用这个sqrt()功能......我确实包括了std_lib_facilities.h,那个包含了cmath,所以我觉得那不是问题吗?
我该怎么做才能使用这个square()功能?
我正在尝试使用MingW(msys2)在Windows上编译程序,但使用j0函数失败。在Linux上,编译没有问题。当我在编译器上使用-std = c ++ 11标志时,似乎很讨厌。如何使它正确编译并打开-std = c ++ 11标志?
样例代码:
#include <cmath>
int main( int argc, char *argv[] )
{
float test = j0( 5 );
}
Run Code Online (Sandbox Code Playgroud)
输出量
$ g++ -std=c++11 test.cpp -o test
test.cpp: In function 'int main(int, char**)':
test.cpp:6:21: error: 'j0' was not declared in this scope
float test = j0( 5 );
Run Code Online (Sandbox Code Playgroud) 我正在使用 python 代码,其中一个方程的 sqrt 根为负值。我用cmath.sqrt它来解决。我从该方程得到的所有答案都以虚数/复数显示(例如xxxxxx j)。我不想得到那个虚数/复数,因为我随后使用的代码无法读取这些虚数/复数。那么,如何避免得不到虚数呢?或者换句话说,我怎样才能将这些虚数转换为实数?或者我怎样才能删除那些“j”。谢谢。
可以使用sph_legendreor调用tr1并编译它gcc-5gcc-6
#include<tr1/cmath>
int main()
{
std::tr1::sph_legendre(1,1,0);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,如果我尝试将其编译为clang++:
clang++ -stdlib=libstdc++ legendre.cpp -o legendre
我明白了
错误:命名空间“std::tr1”中没有名为“sph_legendre”的成员
在第 40.3 节中,C++PP(第 4 版)指出:
“对于特殊数学函数有一个单独的 ISO 标准 [C++Math,2010]。实现可以将这些函数添加到 cmath”
我怎样才能编译这些特殊函数clang++?