using System;
using System.Collections.Generic;
namespace fraction
{
class Program
{
// 计算连分数
static Int32[] GetFraction(double f, int n)
{
var d = new List<Int32>();
if(f <= 0)
{
d.Add((int)Math.Floor(f));
return d.ToArray();
}
for(int i=0; i<n;++i)
{
// 整数部分
var dn = (int)Math.Floor(f);
if (i+1==n)
{
dn = (int)Math.Round(f);
}
d.Add(dn);
// 小数部分
f = f - dn;
if(f <= 0)
{
break;
}
// 剩余小数
f = 1 / f;
}
return d.ToArray();
}
static void Main(string[] args)
{
C#计算连分数
最新推荐文章于 2021-12-05 22:42:05 发布