四捨五入って難しい?

「四捨五入の関数って無いんですか?」
……うーん、どうやら無いようですね。
で、造りました。
n捨n+1入ですが。

double Round_Value(double dValue, int nRCriterion,int nPrecision)
{
    double	dOffset,dPow
    int		nTemp
    
    //argument check
    if (nRCriterion >= 10 || nRCriterion <= 0) return -1
    
    dPow = 1
    FOR(int i=0;i<nPrecision;i++) dPow *= 10
    
    dOffset = (10 - nRCriterion) / (dPow * 10)
    
    //rounding
    return ((int)((dValue + dOffset) * dPow)) / dPow
}

Cってこんな感じだったっけ?
ああ、もう他の言語書けなくなってる……。
なんか変な気もするけど、ちゃんと動いてたから大丈夫でしょう。


そうそう。
いろいろ調べたら、なんかunicode変換の関数はデフォで入ってたらしいですよ。