相关疑难解决方法(0)

为什么我不能使用浮点值作为模板参数?

当我尝试float用作模板参数时,编译器会为此代码而烦恼,同时int工作正常.

是因为我不能float用作模板参数吗?

#include<iostream>
using namespace std;

template <class T, T defaultValue>
class GenericClass
{
private:
    T value;
public:
    GenericClass()
    {
        value = defaultValue;
    }

    T returnVal()
    {
        return value;
    }
}; 


int main()
{
    GenericClass <int, 10> gcInteger;
    GenericClass < float, 4.6f> gcFlaot;

    cout << "\n sum of integer is "<<gcInteger.returnVal();
    cout << "\n sum of float is "<<gcFlaot.returnVal();

    return 0;       
}
Run Code Online (Sandbox Code Playgroud)

错误:

main.cpp: In function `int main()':
main.cpp:25: error: `float' is not a …
Run Code Online (Sandbox Code Playgroud)

c++ generics floating-point templates

107
推荐指数
7
解决办法
5万
查看次数

我如何自己编写电源功能?

我一直想知道如何制作一个自己计算功率(例如2 3)的功能.在大多数语言中,这些都包含在标准库中,主要是作为pow(double x, double y),但我怎么能自己编写呢?

我在考虑for loops,但它认为我的大脑进入了一个循环(当我想用非整数指数做一个力量,比如5 4.5或负2-2)并且我疯了;)

那么,我该如何编写一个计算实数幂的函数呢?谢谢


哦,也许重要的是要注意:我不能使用功能(例如exp)的功能,这将使这最终无用.

c++ math floating-point

49
推荐指数
6
解决办法
5万
查看次数

用于简化小数到分数的算法

我尝试编写一种算法来将小数简化为一小部分,并意识到它并不太简单.令人惊讶的是,我在网上看到了我发现的所有代码,这些代码要么太长,要么在某些情况下不起作用.更令人讨厌的是,它们不适用于重复小数.我想知道是否会有一位数学家/程序员在这里理解所有涉及的过程,将小数简化为一小部分.任何人?

.net c# algorithm math

43
推荐指数
9
解决办法
3万
查看次数

将分数转换为浮点数?

有点像这个问题,但相反.

给定一个串像1,1/2或者1 2/3,什么是将其转换成一个浮动的最好方法?我正在考虑逐个使用正则表达式,但也许有人知道更好的方法,或者预先存在的解决方案.我希望我可以使用eval,但我认为第三种情况可以防止这种情况发生.

python parsing

23
推荐指数
3
解决办法
2万
查看次数

为什么在C++中pow(10,5)= 9,999

最近我写了一段代码:

const int sections = 10;

for(int t= 0; t < 5; t++){
   int i = pow(sections, 5- t -1);  
   cout << i << endl;
}
Run Code Online (Sandbox Code Playgroud)

结果是错误的:

9999
1000
99
10
1
Run Code Online (Sandbox Code Playgroud)

如果我只使用这个代码:

for(int t = 0; t < 5; t++){
    cout << pow(sections,5-t-1) << endl; 
}
Run Code Online (Sandbox Code Playgroud)

问题不再发生:

10000
1000
100
10
1
Run Code Online (Sandbox Code Playgroud)

有没有人给我解释?非常感谢你!

c++ mingw pow

11
推荐指数
2
解决办法
8344
查看次数

自动化文本,可重复研究

我正在使用RStudio,R Markdown,Latex和Pandoc来清理数据,构造变量,运行我的分析并报告结果.我对可重复研究的概念不熟悉,但我很迷恋.很有道理.

动态表格和数字都没有问题.然而,动态文本让我很难过.我可以插入内联代码来说95%的统计数据都是错误的,但我不确定如何以可重现的方式改变我的语言.

例如,如果我有一个对象x = 0.66并且我想写"3个牙医中的2个使用Crest"怎么办?我可以查看x,0.66的当前值,并在文本中键入"2 out of 3",但这是不可重现的.假设我得到新数据并重新运行我的分析,x变为0.52.我的文字已经过时了.当然,我可以动态地报告52%的牙医更喜欢Crest,但是当一切报告为百分比时,报告会变得陈旧.

我的想法是,当我想要改变写作时,我可以创建我可以在文本中调用的函数.例如,"out.of"函数可以用于if else语句来生成文本:

ifelse(x < 0.09,"fewer than 1 out of 10",
ifelse(x >= 0.09) & x < 0.11,"roughly 1 out of 10",
ifelse(x >= 0.11 & x < 0.15,"slightly more than 1 out of 10",
ifelse(x >= 0.15 & x < 0.19,"nearly 2 out of 5",
ifelse(x >= 0.19 & x < 0.21,"roughly 2 out of 5",
...
ifelse(x >= 0.95 & x < 0.99,"nearly all",
ifelse(x >= 0.99,"all","fubar"))...)
Run Code Online (Sandbox Code Playgroud)

我还可以创建一个分数函数,它可以做十分之一,五分之二,三分之一......

我相信其他人已经解决了这个问题.任何线索?想法?

latex r r-markdown reproducible-research

11
推荐指数
1
解决办法
249
查看次数

在Objective-C中将小数转换为小数?

我试图取小数点后的所有内容并将其显示为分数.找不到有关如何实现这一点的Objective-c.我正在使用double我的变量格式,不确定这是否重要.这就是我为我的答案输出格式化的方式:[theTextField setText:[NSString stringWithFormat:@"%f''", (myVariable)]];这显示为十进制,但是它真的很喜欢整数和分数(即.)7 1/2而不是7.5000.先谢谢你!

更新:5/13/2011

好吧,我得到它显示7 1/16,但数学的东西是关闭的.因为即使通过改变分割的值,它也不会从1/16变化.我在哪里错了?如果有人能够真正使这个工作正常,请完整地发布它是如何完成的.这应该是简单的,但不是太耗时.请完整地发布它是如何完成的.谢谢.

更新:如果这个答案不起作用,请查看我的其他帖子,这有效!将小数转换为分数

iphone formatting xcode objective-c

9
推荐指数
2
解决办法
6102
查看次数

将实数转换为基数

假设我有一个实数.我想用整数a和b的形式a + sqrt(b)来近似它.但我不知道a和b的值.当然,我宁愿用a和b的小值得到一个很好的近似值.让我们暂时不确定"好"和"小"是什么意思.这些术语的任何合理定义都可以.

有找到它们的理智方式吗?类似于用于查找小数的小数近似的连续分数算法.有关分数问题的更多信息,请参见此处.

编辑:澄清一下,这是一个任意的实数.我只有一堆数字.因此,根据我们想要的近似值有多好,a和b可能存在也可能不存在.蛮力自然不是一个特别好的算法.我能想到的最好的方法是开始向我的实数添加整数,对结果求平方,然后看看我是否接近整数.相当蛮力,而不是一个特别好的算法.但如果没有更好的存在,那本身就很有趣.

编辑:显然b必须为零或正.但是a可以是任何整数.

language-agnostic algorithm math

7
推荐指数
2
解决办法
1936
查看次数

给定十进制数,找到给出整数结果的最小整数乘数

最好用一个例子来描述问题.假设我的小数值为100.227273.

100.227273*X = Y.

我需要找到给出整数Y的最小正整数X.

algorithm math

6
推荐指数
2
解决办法
4419
查看次数

将浮点数转换为javascript中的近似分数

我们需要将计算出的值(例如3.33333000540733337)转换为3 1/3.我试过的任何库如https://github.com/peterolson/BigRational.js都会将其转换为最准确的有理数,而我只关注近似有理数,到.01有效小数.

在ruby中,我们目前使用Rational(1.333).理性化(Rational(0.01)),它给出1作为整数,1作为分子,3作为分母.

对可能有用的算法的任何想法都会很棒.

javascript math decimal fractions

4
推荐指数
1
解决办法
1910
查看次数

在没有幂函数的情况下计算for循环中的分数指数

我在这方面的数学有点不稳定。有人知道我如何使用* /-+和for循环以外的数学函数来计算10 ^ 2.2之类的幂吗?我没有访问数学库的权限(并且无法导入/包含它),但是需要计算这些东西。嗯..也许我应该看看数学库是如何做到的。

algorithm math

2
推荐指数
1
解决办法
7240
查看次数

将浮点数转换为有理数,保证转换回原始浮点数

我正在寻找一种将浮点数转换为有理数的算法,以便保证有理数计算回原始浮点数,并且分母被最小化。

一个简单的算法只能将浮点数的实际值返回为 X / 2 N,但对于不是有限二进制分数的任何东西,2 N往往非常大。例如,数字 0.1,当存储在双精度浮点数中时,实际上近似为 ³??²???????¹???³????????????????? ???(分母为 2 55)。但是,将 0.1 转换为 ¹??? 显然更好,而且¹???将评估为 ³??²?????¹???³?????????????????????? 在浮点运算下。

一个相关的问题是用最少的数字打印十进制浮点数(本文描述了一些技术),这可以被认为是这个问题的一个特殊版本,附加约束是分母必须是 10 的幂。

一个现有的问题,并且可能更多,但它们没有转换后的有理数必须评估为原始浮点数的约束。

floating-point rational-number numerical-analysis fractions

1
推荐指数
1
解决办法
141
查看次数

为什么pow(5,2)变成了24?

我正在制作一个简单的计算器,你可以选择一个功能,然后2个输入来得到你的答案.这是一个简洁的小程序,除了权力之外,一切都运行顺畅.每个号码都正常工作.

但根据这个:5^2=24, 5^3=624.我在用pow(number1,number2).

#include <iostream>
#include<math.h>

using namespace std;

int main()
{
    for(;;){
    int func;
    int number1;
    int number2;
    cout << "Input your function (+,-,x,/,Square,Power)(1,2,3,4,5,6) ";
    cin >> func;
    cout << "input #1: ";
    cin >> number1;
    cout << "input #2: ";
    cin >> number2;
    if (func==1){
        int answer;
        answer = number1 + number2;
        cout << number1 << " + " << number2 << " = " << answer << endl;
    }
    else {
            if (func==2){ …
Run Code Online (Sandbox Code Playgroud)

c++ calculator pow

-10
推荐指数
1
解决办法
3219
查看次数