自己用C编写的小游戏,DOS界面哦,可以运行。 浮点数基本运算 浮点数的基本运算主要有四则运算、符号处理、大小比较,以及浮点数分柝等。 包含头文件 "fn.hpp" #include "fn.hpp" 浮点数基本运算 浮点数的基本运算中有加、减、乘、除、取负、绝对值、相等比较等。 加减乘除 加、减、乘、除四个运算极为相似,都是需要两个参数,结果当然也是浮点数了。 例子: // 加 减 乘 除 btil::fn::plus<f1, f2>::value // f1+f2 的结果 btil::fn::minus<f1, f2>::value // f1-f2 的结果 btil::fn::multiplies<f1, f2>::value // f1*f2 的结果 btil::fn::divides<f1, f2>::value // f1/f2 的结果 plus<f1, f2>::value::f_val // f1+f2 的结果的值 struct one { static const double f_val = 1.0 } // 两个浮点数 struct two { static const double f_val = 2.0 } minus<two, plus<divides<one, two>::value, one>::value >::value::f_val == 0.5 取负 取负运算就是取一个浮点数的负数。
上传时间: 2014-12-06
上传用户:jichenxi0730
1. 实现原理: * 任何一个数都可以表示成指数形式,如下所示: * * N=nEe (0=<n的绝对值<=1,e为10的指数幂) * * 例如100可以表示成1E2,1001可以表示成1.01E3 * * 类 CBigNumber的成员number为上述的n,exponent为上述的e * * 2. 如何使用这个类: * * 你可以把CBigNumber的头文件和实现函数加入你的工程,然后定义 * * 该类的实例,就可以对这些实例进行加减乘除了(详见示例程序)
标签:
上传时间: 2013-12-31
上传用户:gtf1207
词法分析,用C语言开发的,绝对值的一看经过本人十多天的研究,写成的
标签: 分
上传时间: 2013-12-28
上传用户:pinksun9
算法介绍 矩阵求逆在程序中很常见,主要应用于求Billboard矩阵。按照定义的计算方法乘法运算,严重影响了性能。在需要大量Billboard矩阵运算时,矩阵求逆的优化能极大提高性能。这里要介绍的矩阵求逆算法称为全选主元高斯-约旦法。 高斯-约旦法(全选主元)求逆的步骤如下: 首先,对于 k 从 0 到 n - 1 作如下几步: 从第 k 行、第 k 列开始的右下角子阵中选取绝对值最大的元素,并记住次元素所在的行号和列号,在通过行交换和列交换将它交换到主元素位置上。这一步称为全选主元。 m(k, k) = 1 / m(k, k) m(k, j) = m(k, j) * m(k, k),j = 0, 1, ..., n-1;j != k m(i, j) = m(i, j) - m(i, k) * m(k, j),i, j = 0, 1, ..., n-1;i, j != k m(i, k) = -m(i, k) * m(k, k),i = 0, 1, ..., n-1;i != k 最后,根据在全选主元过程中所记录的行、列交换的信息进行恢复,恢复的原则如下:在全选主元过程中,先交换的行(列)后进行恢复;原来的行(列)交换用列(行)交换来恢复。
上传时间: 2015-04-09
上传用户:wang5829
提供了几种数据拟合的c++代码:1 直线拟合(FIT);2 线性最小二乘法((LFIT, COVSRT), (SVDFIT, SVDVAR)(oddity), (FPOLY, FLEG)(example));3 非线性最小二乘法((MRQMIN(Levenberg-Marguardt), MRQCOF(evaluation)), FGAUSS(example));4 绝对值偏差最小的直线拟合(MEDFIT(cal para), ROFUNC(example))。
标签: COVSRT SVDFIT SVDVAR oddity
上传时间: 2014-01-09
上传用户:bjgaofei
矩阵的最大特征值的幂法. 对于工程计算而言,矩阵的特征值和特征向量都是相当重要和常见的数据,这里给出的幂法是一种常见的求解方法,用的是迭代的思想。 符号说明: 1A为待求的矩阵, 2Uk,Vk为迭代用的列向量。 3最后的最大特征值maxLamda由最后一次的max(Uk)-----求Uk中的绝对值最大的元素的绝对值.所决定。 而maxLamda所对应的特征向量由最后一次迭代的Vk所决定. 主要的想法就是先选一个不为0的初始向量U0!=0,然后按下面的式子迭代。
上传时间: 2015-06-24
上传用户:exxxds
//=== === === === === === === === === === === === === === = //函数说明 //函数名称:PolyFit //函数功能:最小二乘法曲线拟合 //使用方法:double *x ---- 存放n个数据点的X坐标 // double *y ---- 存放n个数据点的Y坐标 // int n -------- 给定数据点个数 // double *a ---- 返回m-1次拟合多项式的m个系数 // int m -------- 拟合多项式的项数,即拟合多项式的最高次为m-1。要求m<=n,且 // m<=20。若m>n或m>20,则本函数自动按m=min{n,20}处理 // double *dt --- dt[0]返回拟合多项式与各数据点误差的平方和;dt[1]返回拟合多 // 项式与各数据点的误差绝对值之和;dt[2]返回拟合多项式与各数据 // 点误差绝对值的最大值 //注意事项:拟合多项式的形式为 y = b0 + b1*(x-Xavr)...
上传时间: 2015-07-19
上传用户:waizhang
基本思想是在构造二叉检索树的过程中,当插入一个接点后都去检查是否由于该接点的插入而破坏了二叉检索树的平衡性;若出现绝对值超过1的平衡因子,则需要在保持二叉检索树特性的前提下通过调整使之达到新的平衡。
上传时间: 2015-11-21
上传用户:er1219
用Gauss消元法、选列主元的Gauss消元法求线性方程组(1)的解,要求输出增广矩阵的消元变化过程。 用Gauss消元法、选列主元的Gauss消元法求线性方程组(1)的解,要求输出增广矩阵的消元变化过程 42x1+2x2+3x3=3 x1+7x2+7x3=1 -2x1+4x2+5x3=-7 算法思想:Gauss消元法是将线性方程组化为上三角形线性方程组,然后再用一个回代过程求这个上三角形线性方程组的解;选主元的Gauss消元法是在Gauss消元法上增加了选列主元的过程,选列主元是为了避免当akk 为零或绝对值充分小时使计算过程被迫终止或计算误差较大,选列主元是将akk、a(k+1)k 、…、ank 中绝对值最大的元素移到主对角线上,从而改进Gauss消元法性能
上传时间: 2016-02-06
上传用户:tyler
对矩阵里的元素进行搜索,查找其中绝对值最大的n个元素,保持其位置不变
上传时间: 2013-11-28
上传用户:windwolf2000