摘要: 总结一下一些常用的计算平方根的方法1. 牛顿法具体的做法如下: 计算公式如下:具体的计算程序如下: doublesqrt_(doublex){doubleg=x;while(ABS(g*g-x)>0.000001){g=(g+x/g)/2;}returng;}2. 利用级数进行逼近微积分中的泰勒级数如下:这样,有了这个公式我们可以得到求平方根公式的展开式: 这样我们可以进行在一定精度内的逼近。但是这儿存在一个问题,就是这个公式的收敛问题。它是存在收敛区间的。 所以可以得到最后的代码:doubleTsqrt(doublex)//计算[0,2)范围内数的平方根{doublesum,coffe 阅读全文
posted @ 2012-05-15 22:34 Mr.Rico 阅读(38984) 评论(0) 推荐(0)
摘要: Vim 中使用 OmniComplete 为 C/C++ 自动补全 OmniComplete 并不是插件的名字,而是 Vim 众多补全方式中的一种(全能补全)。说白了 OmniComplete 其实就是根据光标前的内容猜测光标后的内容,具体怎么猜取决于所采用的脚本。 而 OmniCppComplete 就是专为 C/C++ 编写的 OmniComplete 一个补全脚本。 那么经常和 OmniCppComplete 一起出没的 Ctags 又是什么呢?Ctags 全名 Exuberant Ctags,是一个独立的程序(也就是说,其实和 Vim 一点... 阅读全文
posted @ 2012-05-15 17:08 Mr.Rico 阅读(18865) 评论(2) 推荐(1)
摘要: C语言可变参数实现 第一:什么是可变参数int printf(const char* format, ...);看到printf的定义大家就知道了,只有一个固定的const char*参数,后面的都是不定长的参数列表了。第二:自己写一个可变参数函数1.参数形参方式,跟printf类似,第一个为固定参数,后面的用...代替;2.包含stdarg.h头文件,因为需要用到几个里面定义的宏;void va_start(va_list arg_ptr, prev_param);type va_arg(va_list arg_ptr, type);void va_end(va_list arg_ptr). 阅读全文
posted @ 2012-05-15 15:48 Mr.Rico 阅读(1018) 评论(0) 推荐(2)