﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-像大海一样-文章分类-c++/c</title><link>http://www.cppblog.com/matdu/category/7240.html</link><description>matdu</description><language>zh-cn</language><lastBuildDate>Sun, 21 Mar 2010 05:28:35 GMT</lastBuildDate><pubDate>Sun, 21 Mar 2010 05:28:35 GMT</pubDate><ttl>60</ttl><item><title>matlab画图工具</title><link>http://www.cppblog.com/matdu/articles/109917.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Wed, 17 Mar 2010 10:38:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/109917.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/109917.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/109917.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/109917.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/109917.html</trackback:ping><description><![CDATA[matlab不但可以用来仿真，画图功能也很强大。<br>常用画图工具，plot，subplot,画对数坐标的工具：loglog，semilogx,semilogy<br>
<img src ="http://www.cppblog.com/matdu/aggbug/109917.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2010-03-17 18:38 <a href="http://www.cppblog.com/matdu/articles/109917.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C常用数学库</title><link>http://www.cppblog.com/matdu/articles/69293.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Fri, 12 Dec 2008 13:39:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/69293.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/69293.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/69293.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/69293.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/69293.html</trackback:ping><description><![CDATA[<p>&nbsp;#include &lt;stdlib.h&gt;<br>&nbsp; int abs( int num );<br>&nbsp; double fabs( double arg );<br>&nbsp; long labs( long num );<br>&nbsp;&nbsp;&nbsp; 函数返回num的绝对值</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double acos( double arg );<br>&nbsp;&nbsp;&nbsp; 函数返回arg的反余弦值，arg的值应该在-1到1之间</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double asin( double arg );<br>&nbsp;&nbsp;&nbsp; 函数返回arg的反正弦值，arg的值应该在-1到1之间</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double atan( double arg );<br>&nbsp;&nbsp;&nbsp; 函数返回arg的反正切值</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double atan2( double y, double x );<br>&nbsp;&nbsp;&nbsp; 函数返回y/x的反正切值，并且它可以通过x，y的符号判断<br>&nbsp;&nbsp;&nbsp; （x，y）所表示的象限，其返回的也是对应象限的角度值</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double ceil( double num );<br>&nbsp; double floor( double arg );<br>&nbsp;&nbsp;&nbsp; ceil函数返回不小于num的最小整数，如num = 6.04, 则返回7.0<br>&nbsp;&nbsp;&nbsp; floor函数返回不大于num的最大的数，如num = 6.04, 则返回6.0</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double cos( double arg );<br>&nbsp; double sin( double arg );<br>&nbsp; double tan( double arg );<br>&nbsp;&nbsp;&nbsp; 函数分别返回arg的余弦，正弦，正切值，arg都是用弧度表示</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double cosh( double arg );<br>&nbsp; double sinh( double arg );<br>&nbsp; double tanh( double arg );<br>&nbsp;&nbsp;&nbsp; 函数分别返回arg的双曲余弦，双曲正弦，双曲正切，arg都是用弧度表示的</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double fmod( double x, double y );<br>&nbsp;&nbsp;&nbsp; 函数返回x/y的余数</p>
<p>&nbsp; #include &lt;stdlib.h&gt;<br>&nbsp; div_t div( int numerator, int denominator );<br>&nbsp; ldiv_t ldiv( long numerator, long denominator );<br>&nbsp;&nbsp;&nbsp; 函数返回numerator/demominator操作的，返回一个结构体div_t(ldiv_t)<br>&nbsp;&nbsp;&nbsp; div_t(ldiv_t)结构体中定义了quot(商),rem(余数)</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double exp( double arg );<br>&nbsp;&nbsp;&nbsp; 函数返回e(自然底数)的arg次</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double log( double num );<br>&nbsp;&nbsp;&nbsp; 函数返回num的自然对数值num应为大于0的数</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double log10( double num );<br>&nbsp;&nbsp;&nbsp; 函数返回num以10为底的对数值，num也应该为大于0的数</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double pow( double base, double exp );<br>&nbsp;&nbsp;&nbsp; 函数返回以base为底的exp次，不允许的取值范围:<br>&nbsp;&nbsp;&nbsp; 当base 为 0 且exp 小于或等于 0<br>&nbsp;&nbsp;&nbsp; 当base 为 负数 且 exp 不为整数</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double sqrt( double num );<br>&nbsp;&nbsp;&nbsp; 函数返回num的开方值，num应该为不小于0的值</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double frexp( double num, int* exp );<br>&nbsp;&nbsp;&nbsp; 函数可以获取科学计数法的参数<br>&nbsp;&nbsp;&nbsp; 函数返回在0.5到1.0之间的值， 传入exp的参数用于返回num的指数<br>&nbsp;&nbsp;&nbsp; (以2为底数计算，即：num = mantissa * (2 ^ exp))</p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double ldexp( double num, int exp );<br>&nbsp;&nbsp;&nbsp; 函数返回num*(2^exp)的值，如果结果溢出，返回HUGE_VAL </p>
<p>&nbsp; #include &lt;math.h&gt;<br>&nbsp; double modf( double num, double *i );<br>&nbsp;&nbsp;&nbsp; 函数分割num，将整数部分填入i的值，小数部分返回</p>
<p>文章出处：<a href="http://www.diybl.com/course/3_program/c/c_js/2007925/73590.html">http://www.diybl.com/course/3_program/c/c_js/2007925/73590.html</a></p>
<img src ="http://www.cppblog.com/matdu/aggbug/69293.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-12-12 21:39 <a href="http://www.cppblog.com/matdu/articles/69293.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>两个距阵相乘</title><link>http://www.cppblog.com/matdu/articles/69292.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Fri, 12 Dec 2008 13:38:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/69292.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/69292.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/69292.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/69292.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/69292.html</trackback:ping><description><![CDATA[<p>#include&lt;stdio.h&gt;<br>#include&lt;conio.h&gt;<br>#define X 3<br>#define Y 3&nbsp;&nbsp; //3*3的距阵</p>
<p>int a[X][Y];<br>int b[X][Y];<br>int c[X][Y];</p>
<p>void matrix(int b[][X],int c[][Y]);<br>main()<br>{<br>int i,j,temp;<br>//clrsc();<br>printf("Please input int matrix b[%d][%d]\n",X,Y);<br>for(i=0;i&lt;Y;i++)<br>for(j=0;j&lt;Y;j++){<br>scanf("%d",&amp;temp);<br>b[i][j]=temp;<br>}<br>printf("Please input int matrix c[%d][%d]\n",X,Y);<br>for(i=0;i&lt;X;i++)<br>for(j=0;j&lt;Y;j++){<br>scanf("%d",&amp;temp);<br>c[i][j]=temp;<br>}<br>matrix(b,c);<br>printf("Now print resource matrix b[%d][%d]=",X,Y);<br>for(i=0;i&lt;X;i++){<br>printf("\n");<br>for(j=0;j&lt;Y;j++)<br>printf("%d ",b[i][j]);<br>}<br>printf("\n");<br>printf("Now print resource matrix c[%d][%d]=",X,Y);<br>for(i=0;i&lt;X;i++){<br>printf("\n");<br>for(j=0;j&lt;Y;j++)<br>printf("%d ",c[i][j]);<br>}<br>printf("\n");<br>printf("Now printm multiply results matrix a[%d][%d]=B*C:",X,Y);<br>for(i=0;i&lt;X;i++){<br>printf("\n");<br>for(j=0;j&lt;Y;j++)<br>printf("%d ",a[i][j]);<br>}<br>getch();<br>return 0;<br>}<br>/********************************************************************/<br>void matrix(int b[][X],int c[][Y])<br>{<br>int i,j,k,temp;<br>for(i=0;i&lt;X;i++)<br>for(j=0;j&lt;Y;j++){<br>for(k=0;k&lt;Y;k++)<br>a[i][j]+=b[i][k]*c[k][j];<br>}<br>}</p>
<p>&nbsp;</p>
<img src ="http://www.cppblog.com/matdu/aggbug/69292.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-12-12 21:38 <a href="http://www.cppblog.com/matdu/articles/69292.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用Matlab距阵运算函数</title><link>http://www.cppblog.com/matdu/articles/63700.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Fri, 10 Oct 2008 14:09:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/63700.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/63700.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/63700.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/63700.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/63700.html</trackback:ping><description><![CDATA[1 基本矩阵函数和操作 <br><br>eye 单位矩阵 <br>zeros 全零矩阵 <br>ones 全1矩阵 <br>rand 均匀分布随机阵 <br>genmarkov 生成随机Markov矩阵 <br>linspace 线性等分向量 <br>logspace 对数等分向量 <br>logm 矩阵对数运算 <br>cumprod 矩阵元素累计乘 <br>cumsum 矩阵元素累计和 <br>toeplitz Toeplitz矩阵 <br>disp 显示矩阵和文字内容 <br>length 确定向量的长度 <br>size 确定矩阵的维数 <br>diag 创建对角矩阵或抽取对角向量 <br>find 找出非零元素1的下标 <br>matrix 矩阵变维 <br>rot90 矩阵逆时针旋转90度 <br>sub2ind 全下标转换为单下标 <br>tril 抽取下三角阵 <br>triu 抽取上三角阵 <br>conj 共轭矩阵 <br>companion 伴随矩阵 <br>det 行列式的值 <br>norm 矩阵或向量范数 <br>nnz 矩阵中非零元素的个数 <br>null 清空向量或矩阵中的某个元素 <br>orth 正交基 <br>rank 矩阵秩 <br>trace 矩阵迹 <br>cond 矩阵条件数 <br>inv 矩阵的逆 <br>rcond 逆矩阵条件数 <br>lu LU分解或高斯消元法 <br>pinv 伪逆 <br>qr QR分解 <br>givens Givens变换 <br>linsolve 求解线性方程 <br>lyap Lyapunov方程 <br>hess Hessenberg矩阵 <br>poly 特征多项式 <br>schur Schur分解 <br>expm 矩阵指数 <br>expm1 矩阵指数的Pade逼近 <br>expm2 用泰勒级数求矩阵指数 <br>expm3 通过特征值和特征向量求矩阵指数 <br>funm 计算一般矩阵函数 <br>logm 矩阵对数 <br>sqrtm 矩阵平方根 <br><br>2 特性值与奇异值 <br>spec 矩阵特征值 <br>gspec 矩阵束特征值 <br>bdiag 块矩阵，广义特征向量 <br>eigenmar- 正则化Markov特征 <br>kov 向量 <br>pbig 特征空间投影 <br>svd 奇异值分解 <br>sva 奇异值分解近似 <br><br><br><br>3 矩阵元素运算 <br><br>cumprod 元素累计积 <br>cumsum 元素累计和 <br>hist 统计频数直方图 <br>max 最大值 <br>min 最小值 <br>mean 平均值 <br>median 中值 <br>prod 元素积 <br>sort 由大到小排序 <br>std 标准差 <br>sum 元素和 <br>trapz 梯形数值积分 <br>corr 求相关系数或方差 <br><br><br><br>4稀疏矩阵运算 <br><br>sparse 稀疏矩阵 <br>adj2sp 邻接矩阵转换为稀疏矩阵 <br>full 稀疏矩阵转换为全矩阵 <br>mtlb_sparse 将scilab稀疏矩阵转换为matlab稀疏矩阵格式 <br>sp2adj 将稀疏矩阵转换为邻接矩阵 <br>speye 稀疏矩阵方式单位矩阵 <br>sprand 稀疏矩阵方式随机矩阵 <br>spzeros 稀疏矩阵方式全零阵 <br>lufact 稀疏矩阵LU分解 <br>lusolve 稀疏矩阵方程求解 <br>spchol 稀疏矩阵Cholesky分解</cn> <br>
<img src ="http://www.cppblog.com/matdu/aggbug/63700.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-10-10 22:09 <a href="http://www.cppblog.com/matdu/articles/63700.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>利用Pi测试cpu的计算效率</title><link>http://www.cppblog.com/matdu/articles/62882.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Sat, 27 Sep 2008 03:34:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/62882.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/62882.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/62882.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/62882.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/62882.html</trackback:ping><description><![CDATA[对于一般的cpu，我们买来了很难确定它就是很稳定和正常工作，于是对其测试就成了一个很重要的环节。<br><br>在数学上我们知道有这样一个函数，积分后为Pi，但是那是解析的。对于数字化电脑，难免有截断误差和舍入误差，那么当取点很多时，误差会很小。于是我们就可以利用这个原理，大量的离散格点，达到几千甚至上万，那么得到的Pi值于已知的进行比较，就知道cpu大概的工作效率。当然这样并不是很精确，但却能给我们一个粗略的估计。<br>下面是我自己写的一个小的程序，对Pi进行计算，得到Pi的值和计算时间。<br><br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">fstream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">ctime</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000">&nbsp;std;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;f(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main()<br><img id=Codehighlighter1_107_457_Open_Image onclick="this.style.display='none'; Codehighlighter1_107_457_Open_Text.style.display='none'; Codehighlighter1_107_457_Closed_Image.style.display='inline'; Codehighlighter1_107_457_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_107_457_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_107_457_Closed_Text.style.display='none'; Codehighlighter1_107_457_Open_Image.style.display='inline'; Codehighlighter1_107_457_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_107_457_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_107_457_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;time_t&nbsp;Stime,Etime;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;time&nbsp;class</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;n</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">10000000</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;h</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1.0</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">)n;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;sum</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0.0</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;x;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;time(</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">Stime);&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">time&nbsp;start</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;(i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;&nbsp;i</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">n;&nbsp;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_310_343_Open_Image onclick="this.style.display='none'; Codehighlighter1_310_343_Open_Text.style.display='none'; Codehighlighter1_310_343_Closed_Image.style.display='inline'; Codehighlighter1_310_343_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_310_343_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_310_343_Closed_Text.style.display='none'; Codehighlighter1_310_343_Open_Image.style.display='inline'; Codehighlighter1_310_343_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_310_343_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_310_343_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;x</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(i</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">0.5</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;sum&nbsp;</span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000">&nbsp;f(x);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;pi</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">sum;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;cout</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">pi</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">endl;;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;time(</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">Etime);&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">tim&nbsp;end</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;cout</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">Etime</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Stime</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">endl;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;f(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;a)<br><img id=Codehighlighter1_480_507_Open_Image onclick="this.style.display='none'; Codehighlighter1_480_507_Open_Text.style.display='none'; Codehighlighter1_480_507_Closed_Image.style.display='inline'; Codehighlighter1_480_507_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_480_507_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_480_507_Closed_Text.style.display='none'; Codehighlighter1_480_507_Open_Image.style.display='inline'; Codehighlighter1_480_507_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_480_507_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_480_507_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #000000">4.0</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">1.0</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">a</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">a));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<img src ="http://www.cppblog.com/matdu/aggbug/62882.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-09-27 11:34 <a href="http://www.cppblog.com/matdu/articles/62882.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常微分方程的四阶Runge-Kutta解法</title><link>http://www.cppblog.com/matdu/articles/61196.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Sun, 07 Sep 2008 03:12:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/61196.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/61196.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/61196.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/61196.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/61196.html</trackback:ping><description><![CDATA[<p>对于常微分方程的数值解法，四阶Runge—Kutta是一个常用的方法，其精度相对较高，实现起来简单，因而有广泛应用。<br>下面我们简要讨论一下。<br><br>设一阶常微分方程： <br>u'=f(t,u) a&lt;t&lt;b<br>u(t(0))=u(0) </p>
<p><br>Runge-Kutta非线性高阶单步法，p阶R-K法的整体阶段误差为O(h^p)</p>
<p>R-K四阶算法为：<br>u(i+1)=u(i)+h*(k1+3*k2+3*k3+k4)/8<br>k1=f(t(i),u(i))<br>k2=f(t(i+h/3),u(i+h*k1/3))<br>k3=f(t(i+h/3),u(i+h*k2/3))<br>k4=f(t(i+h),u(i+h*k3)) */</p>
<p><br><br>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">cmath</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000">&nbsp;std;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;RK<br><img id=Codehighlighter1_68_708_Open_Image onclick="this.style.display='none'; Codehighlighter1_68_708_Open_Text.style.display='none'; Codehighlighter1_68_708_Closed_Image.style.display='inline'; Codehighlighter1_68_708_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_68_708_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_68_708_Closed_Text.style.display='none'; Codehighlighter1_68_708_Open_Image.style.display='inline'; Codehighlighter1_68_708_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_68_708_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_68_708_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">:<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;k1,k2,k3,k4;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;h,b,u,a;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br><img id=Codehighlighter1_163_168_Open_Image onclick="this.style.display='none'; Codehighlighter1_163_168_Open_Text.style.display='none'; Codehighlighter1_163_168_Closed_Image.style.display='inline'; Codehighlighter1_163_168_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_163_168_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_163_168_Closed_Text.style.display='none'; Codehighlighter1_163_168_Open_Image.style.display='inline'; Codehighlighter1_163_168_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;seth(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;l</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)</span><span id=Codehighlighter1_163_168_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_163_168_Open_Text><span style="COLOR: #000000">{h</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">l;}</span></span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">设步长</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;setf(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;xa</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;xb</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;y</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">设初值和范围（xa,xb）</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_245_284_Open_Image onclick="this.style.display='none'; Codehighlighter1_245_284_Open_Text.style.display='none'; Codehighlighter1_245_284_Closed_Image.style.display='inline'; Codehighlighter1_245_284_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_245_284_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_245_284_Closed_Text.style.display='none'; Codehighlighter1_245_284_Open_Image.style.display='inline'; Codehighlighter1_245_284_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_245_284_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_245_284_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">xb;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">xa;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;u</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">y;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;f(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;t,</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;u)&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">函数值，修改它以适应各自需要</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_336_387_Open_Image onclick="this.style.display='none'; Codehighlighter1_336_387_Open_Text.style.display='none'; Codehighlighter1_336_387_Closed_Image.style.display='inline'; Codehighlighter1_336_387_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_336_387_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_336_387_Closed_Text.style.display='none'; Codehighlighter1_336_387_Open_Image.style.display='inline'; Codehighlighter1_336_387_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_336_387_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_336_387_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">函数设定</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;f</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">u</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">t</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">u;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;f;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img id=Codehighlighter1_390_420_Open_Image onclick="this.style.display='none'; Codehighlighter1_390_420_Open_Text.style.display='none'; Codehighlighter1_390_420_Closed_Image.style.display='inline'; Codehighlighter1_390_420_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_390_420_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_390_420_Closed_Text.style.display='none'; Codehighlighter1_390_420_Open_Image.style.display='inline'; Codehighlighter1_390_420_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_390_420_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/**/</span><span id=Codehighlighter1_390_420_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">---------------------------</span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;dork()&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">R-K&nbsp;主函数</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_449_706_Open_Image onclick="this.style.display='none'; Codehighlighter1_449_706_Open_Text.style.display='none'; Codehighlighter1_449_706_Closed_Image.style.display='inline'; Codehighlighter1_449_706_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_449_706_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_449_706_Closed_Text.style.display='none'; Codehighlighter1_449_706_Open_Image.style.display='inline'; Codehighlighter1_449_706_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_449_706_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_449_706_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;count</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;count</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">(b</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">a)</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">h;count</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_497_702_Open_Image onclick="this.style.display='none'; Codehighlighter1_497_702_Open_Text.style.display='none'; Codehighlighter1_497_702_Closed_Image.style.display='inline'; Codehighlighter1_497_702_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_497_702_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_497_702_Closed_Text.style.display='none'; Codehighlighter1_497_702_Open_Image.style.display='inline'; Codehighlighter1_497_702_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_497_702_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_497_702_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k1</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">f(a</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">count</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">h,u);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k2</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">f(a</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">count</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">,u</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k1</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k3</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">f(a</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">count</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">,u</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k1</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k2);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k4</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">f(a</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">count</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h,u</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k1</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k2</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k3);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;u</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">u</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">h</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(k1</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k2</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">k3</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">k4)</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">8</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">u</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">endl;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;main()<br><img id=Codehighlighter1_725_775_Open_Image onclick="this.style.display='none'; Codehighlighter1_725_775_Open_Text.style.display='none'; Codehighlighter1_725_775_Closed_Image.style.display='inline'; Codehighlighter1_725_775_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_725_775_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_725_775_Closed_Text.style.display='none'; Codehighlighter1_725_775_Open_Image.style.display='inline'; Codehighlighter1_725_775_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_725_775_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_725_775_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>RK&nbsp;my;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>my.seth(</span><span style="COLOR: #000000">0.1</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>my.setf(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>my.dork();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>该程序对数据直接进行显示，如要画图，可以加入几行，输出数据，然后进行画图。<br></p>
<img src ="http://www.cppblog.com/matdu/aggbug/61196.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-09-07 11:12 <a href="http://www.cppblog.com/matdu/articles/61196.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c/c++中得标准库</title><link>http://www.cppblog.com/matdu/articles/61191.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Sun, 07 Sep 2008 02:00:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/61191.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/61191.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/61191.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/61191.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/61191.html</trackback:ping><description><![CDATA[这些是C++的头文件！ <br>#include &lt;ctype.h&gt;//字符处理 <br><br>#include &lt;errno.h&gt;//定义错误码 <br><br>#include &lt;float.h&gt;//浮点数处理 <br><br>#include &lt;fstream.h&gt;//文件输入／输出 <br><br>#include &lt;iomanip.h&gt;//参数化输入／输出 <br><br>#include &lt;iostream.h&gt; //数据流输入／输出 <br><br>#include &lt;limits.h&gt; //定义各种数据类型最值常量 <br><br>#include &lt;locale.h&gt; //定义本地化函数 <br><br>#include &lt;math.h&gt; //定义数学函数 <br><br>#include &lt;stdio.h&gt; //定义输入／输出函数 <br><br>#include &lt;stdlib.h&gt; //定义杂项函数及内存分配函数 <br><br>#include &lt;string.h&gt; //字符串处理 <br><br>#include &lt;strstrea.h&gt; //基于数组的输入／输出 <br><br>#include &lt;time.h&gt; //定义关于时间的函数 <br><br>#include &lt;wchar.h&gt; //宽字符处理及输入／输出 <br><br>#include &lt;wctype.h&gt; //宽字符分类 <br><br><br>标准 C++ （同上的不再注释） <br><br>#include &lt;algorithm&gt; //STL 通用算法 <br><br>#include &lt;bitset&gt; //STL 位集容器 <br><br>#include &lt;cctype&gt; <br><br>#include &lt;cerrno&gt; <br><br>#include &lt;clocale&gt; <br><br>#include &lt;cmath&gt; <br><br>#include &lt;complex&gt; //复数类 <br><br>#include &lt;cstdio&gt; <br><br>#include &lt;cstdlib&gt; <br><br>#include &lt;cstring&gt; <br><br>#include &lt;ctime&gt; <br><br>#include &lt;deque&gt; //STL 双端队列容器 <br><br>#include &lt;exception&gt; //异常处理类 <br><br>#include &lt;fstream&gt; <br>#include &lt;functional&gt; //STL 定义运算函数（代替运算符） <br><br>#include &lt;limits&gt; <br><br>#include &lt;list&gt; //STL 线性列表容器 <br><br>#include &lt;map&gt; //STL 映射容器 <br><br>#include &lt;iomanip&gt; <br><br>#include &lt;ios&gt; //基本输入／输出支持 <br><br>#include &lt;iosfwd&gt; //输入／输出系统使用的前置声明 <br><br>#include &lt;iostream&gt; <br><br>#include &lt;istream&gt; //基本输入流 <br><br>#include &lt;ostream&gt; //基本输出流 <br><br>#include &lt;queue&gt; //STL 队列容器 <br><br>#include &lt;set&gt; //STL 集合容器 <br><br>#include &lt;sstream&gt; //基于字符串的流 <br><br>#include &lt;stack&gt; //STL 堆栈容器 <br><br>#include &lt;stdexcept&gt; //标准异常类 <br><br>#include &lt;streambuf&gt; //底层输入／输出支持 <br><br>#include &lt;string&gt; //字符串类 <br><br>#include &lt;utility&gt; //STL 通用模板类 <br><br>#include &lt;vector&gt; //STL 动态数组容器 <br><br>#include &lt;cwchar&gt; <br><br>#include &lt;cwctype&gt; <br><br>using namespace std; <br><br><br>C99 增加 <br><br>#include //复数处理 <br>#include //浮点环境 <br>#include //整数格式转换 <br>#include //布尔环境 <br>#include //整型环境 <br>#include //通用类型数学宏</cn> 
<img src ="http://www.cppblog.com/matdu/aggbug/61191.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-09-07 10:00 <a href="http://www.cppblog.com/matdu/articles/61191.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>内联函数(inline function) 的使用</title><link>http://www.cppblog.com/matdu/articles/58339.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Fri, 08 Aug 2008 06:18:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/58339.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/58339.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/58339.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/58339.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/58339.html</trackback:ping><description><![CDATA[<p>内联函数inline 是一个小的使用技巧，它在编译时会在调用它的地方展开，通常为了避免重复调用函数增加开销而使用。因此如果出现某一个小的函数经常调用，则可以考虑用内联函数。<br><br>内联函数定义时前面要加 inline，并且它的声明和定义要放在一起，如果二者分开，则失去内联的作用。所有类的内部函数都相当于内联函数。<br>&nbsp;<br>下面是我写的一个小的内联函数：<br></p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">cmath</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000">&nbsp;std;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>inline&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;comp(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;x)<br><img id=Codehighlighter1_89_113_Open_Image onclick="this.style.display='none'; Codehighlighter1_89_113_Open_Text.style.display='none'; Codehighlighter1_89_113_Closed_Image.style.display='inline'; Codehighlighter1_89_113_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_89_113_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_89_113_Closed_Text.style.display='none'; Codehighlighter1_89_113_Open_Image.style.display='inline'; Codehighlighter1_89_113_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_89_113_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_89_113_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;exp(</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">x</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">x);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main()<br><img id=Codehighlighter1_127_201_Open_Image onclick="this.style.display='none'; Codehighlighter1_127_201_Open_Text.style.display='none'; Codehighlighter1_127_201_Closed_Image.style.display='inline'; Codehighlighter1_127_201_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_127_201_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_127_201_Closed_Text.style.display='none'; Codehighlighter1_127_201_Open_Image.style.display='inline'; Codehighlighter1_127_201_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_127_201_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_127_201_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;X[</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">];<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;X[i]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">comp(</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">i</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">0.1</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
函数 comp是一个内联函数。
<img src ="http://www.cppblog.com/matdu/aggbug/58339.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-08-08 14:18 <a href="http://www.cppblog.com/matdu/articles/58339.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux 与xp下的计算时间比较</title><link>http://www.cppblog.com/matdu/articles/57306.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Sun, 27 Jul 2008 10:46:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/57306.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/57306.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/57306.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/57306.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/57306.html</trackback:ping><description><![CDATA[早就听说linux下计算效率要高点，所以许多大的程序一般在linux下进行。最近我自己也特意用了一个小的程序来进行比较二者的效率。<br><br>我的linux是FC9，这是一个比较新的linux版本，对xp的硬盘能自动挂载。我用man 命令分别查看了有g++编译和c++编译，也就是说可以顺利编译c++文件。<br><br>我在xp下用的是VC6编译，这是微软的产物，对于写应用软件很好用，但对于数值计算就一般了，但我也不太清楚哪个编译器对数值有好的编译，就一般用vc6了。<br><br>我写了一个小的程序，就是在里面有一个10000000的简单循环迭加，类型我分别用了int和double型的进行实验。我发现这两种类型，在linux下进行计算有很高的效率。linux和xp的计算时间大概是1：5，这可不是一个小数啊，看来还是linux的计算效率高！但是我仅仅是进行了一个for循环，没有用其他的复杂的程序，可能在应用软件方面二者就是差不多了？！
<img src ="http://www.cppblog.com/matdu/aggbug/57306.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-07-27 18:46 <a href="http://www.cppblog.com/matdu/articles/57306.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c/c++ 中的计时（time类）</title><link>http://www.cppblog.com/matdu/articles/57286.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Sun, 27 Jul 2008 01:34:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/57286.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/57286.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/57286.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/57286.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/57286.html</trackback:ping><description><![CDATA[<font face=#ce_temp_font#>在计算时，有时候我们要求知道整个函数的计算时间，那么c++的time类就派上用处了。<br><br>time类包含在 头文件 ctime 中，一个简单的使用如下：<br><br>time_t Stime,Etime;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Stime是开始的时间，Etime是结束的时间<br>time(&amp;Stime)；&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //开始计时<br>&#8230;&#8230;<br>&#8230;&#8230;&nbsp; //程序主题<br>time（&amp;Etime）；&nbsp;&nbsp; //结束计时<br>cout&lt;&lt;Etime-Stime&lt;&lt;endl;<br><br><br>我在vc中顺利通过这种用法的编译，其结果是程序运行的时间秒数。这正好得到我想要的结果！<br>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br>在C中的时间函数的用法<br>时间函数包含在头文件 time.h中<br><br><br><br><br><br><br><br><br><br><br><br></font>
<img src ="http://www.cppblog.com/matdu/aggbug/57286.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-07-27 09:34 <a href="http://www.cppblog.com/matdu/articles/57286.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>const 与define的区别和优劣</title><link>http://www.cppblog.com/matdu/articles/51432.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Wed, 28 May 2008 14:16:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/51432.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/51432.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/51432.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/51432.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/51432.html</trackback:ping><description><![CDATA[在定义一些常量时，好像用const和 define的效果是一样的，但实际上二者的编译是不同的。多个书上都赞成用const来定义常量，它可以保护程序中的常量在后面不被修改，并且对数据类型进行检查，并且使得程序有很好的健壮性。<br><br>而define仅仅是一个替代，没有任何检查。<br>&nbsp;<br><br>因此，建议在需要常量的地方尽量用const来定义！ 
<img src ="http://www.cppblog.com/matdu/aggbug/51432.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-05-28 22:16 <a href="http://www.cppblog.com/matdu/articles/51432.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c++中endl与“\n”的区别</title><link>http://www.cppblog.com/matdu/articles/51334.html</link><dc:creator>杜伟</dc:creator><author>杜伟</author><pubDate>Tue, 27 May 2008 15:08:00 GMT</pubDate><guid>http://www.cppblog.com/matdu/articles/51334.html</guid><wfw:comment>http://www.cppblog.com/matdu/comments/51334.html</wfw:comment><comments>http://www.cppblog.com/matdu/articles/51334.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/matdu/comments/commentRss/51334.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/matdu/services/trackbacks/51334.html</trackback:ping><description><![CDATA[在c++中，终端输出换行时，用cout&lt;&lt;......&lt;&lt;endl 与 &#8220;\n&#8221;都可以，这是初级的认识。但二者有小小的区别，用endl时会刷新缓冲区，使得栈中的东西刷新一次，但用&#8220;\n&#8221;不会刷新，它只会换行，盏内数据没有变化。<br><br><br>但一般情况，二者的这点区别是很小的，在大的程序中可能会用到。建议用endl来换行。 
<img src ="http://www.cppblog.com/matdu/aggbug/51334.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/matdu/" target="_blank">杜伟</a> 2008-05-27 23:08 <a href="http://www.cppblog.com/matdu/articles/51334.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>