动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ C/C++教程 ]的信息

本月文章推荐
.More Effective C++:通过引用捕.
.利用C++ Builder进行精确计时.
.文本模式下的GUI设计,使用tc2.0.
.C语言入门之预处理.
.GCC.
.Visual C++中动态链接库技术浅谈.
.沧海一粟之垃圾游戏一.
.如何获取打印机参数.
.C语言常用的三种排序方法总结与探.
.C语言初学者入门讲座 第十六讲 文.
.C语言库函数 (D类字母).
.C/C++中枚举类型(enum)的入门教程.
.I/O端口读写的实现.
.C++ Builder 可视化组.
.C语言初学者入门讲座 第八讲 转移.
.随机数算法.
.使非MFC窗口程序的窗口回调过程成.
.用TreeView浏览目录.
.“Hello world!”的N种写法.
.交叉编译.

实用算法(基础算法-递推法-02)

发表日期:2008-3-8 |





顺推法
    倒推法的逆过程就是顺推法,即由边界条件出发,通过递推关系式推出后项值,再由后项值按递推关系式推出再后项值......,依次递推,直至从问题初始陈述向前推进到这个问题的解为止。
    实数数列:一个实数数列共有N项,已知
            ai=(ai-1-ai+1)/2+d,   (1<i<N)(N<60)
    键盘输入N,d,a1,an,m,输出am
    输入数据均不需判错。
算法分析:
    分析该题,对公式:
        Ai=(Ai-1-Ai+1)/2+d         (1<i<N)     (n<60)
    作一翻推敲,探讨其数字变换规律。不然的话会无从下手。
    令 X=A2   s2[i]=(pi,Qi,Ri)表示Ai=PiX+QiD+RiA1
    我们可以根据
        Ai=Ai-2-2Ai-1+2D
          =PiX+QiD+RiA1
    推出公式
        PiX+QiD+RiA1=(Pi-2-2Pi-1)X+(Qi-2-2Qi-1+2)D+(Ri-2-2Ri-1)A1
    比较等号两端X,D和A1的系数项,可得
        Pi=Pi-2-2Pi-1
        Qi=Qi-2-2Qi-1+2
        Ri=Ri-2-2Ri-1
    加上两个边界条件
        P1=0    Q1=0    R1=1    (A1=A1)
        P2=1    Q2=0    R2=0    (A2=A2)
    根据Pi、Qi、Ri的递推式,可以计算出
        S2[1]=(0,0,1);
        S2[3]=(-2,2,1);
        S2[4]=(5,-2,-2);
        S2[5]=(-12,8,5);
        ...................
        S2[i]=(Pi,Qi,Ri);
        ...................
        S2[N]=(PN,QN,RN);
    有了上述基础,AM便不难求得。有两种方法:
    1、由于AN、A1和PN、QN、RN已知,因此可以先根据公式:
        A2=AN-QND-RNA1/PN
    求出A2。然后将A2代入公式
        A3=A1-2A2+2D
    求出A3。然后将A3代入公式
        A4=A2-2A3+2D
    求出A4。然后将A4代入公式
    ............................
    求出Ai-1。然后将Ai-1代入公式
        Ai=Ai-2-2Ai-1+2D
    求出Ai。依此类推,直至递推至AM为止。
    上述算法的缺陷是由于A2是两数相除的结果,而除数PN递增,因此精度误差在所难免,以后的递推过程又不断地将误差扩大,以至当M超过40时,求出的AM明显徧离正确值。显然这种方法简单但不可靠。
    2、我们令A2=A2,A3=X,由S3[i]=(Pi,Qi,Ri)表示Ai=PiX+QiD+RiA2  (i>=2) 可计算出:
        S3[2]=(0,0,1)=S2[1];
        S3[3]=(1,0,0)=S2[2];
        S3[4]=(-2,2,1)=S2[3];
        S3[5]=(5,-2-2)=S2[4];
        ......................
        S3[i]=(..........)=S2[i-1];
        .....................
        S3[N]=(..........)=S2[N-1];
    再令A3=A3,A4=X,由S4[i]=(pi,Qi,Ri)表示Ai=PiX+QiD+RiA3   (i>=3) 可计算得出:
        S4[3]=(0,0,1)=S3[2]=S2[1];
        S4[4]=(1,0,0)=S3[3]=S2[2];
        S4[5]=(-22,1)=S3[4]=S2[3];
        ..........................
        S4[i]=(...........)=S3[i-1]=S2[i-2];
        .......................
        S4[N]=(...........)=S3[N-1]=S2[N-2];
     依此类推,我们可以发现一个有趣的式子:
        AN=PN-i+2*Ai+QN-i+2*D+RN-i+2*Ai-1,  即
        Ai=(AN-QN-i+2*D-RN-i+2*Ai-1)/PN-i+2
    我们从已知量A1和AN出发,依据上述公式顺序递推A2、A3、...、AM.由于PN-i+2递减,因此最后得出的AM要比第一种算法趋于精确。
程序代码如下:
program ND1P4;
const
    maxn    =60;
var
    n,m,i    :integer;
    d        :real;
    list     :array[1..maxn] of real;        {list[i]-------对应ai}
    s        :array[1..maxn,1..3] of real;   {s[i,1]--------对应Pi}
                                             {s[i,2]--------对应Qi}
                                             {s[i,3]--------对应Ri}
procedure init;
    begin
        write('n m d =');
     

上一篇:上海黑暗之龙--麻将原代码 人气:394
下一篇:实现关机时的效果的一段代码 人气:373
浏览全部C/C++的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-7 站长中国企业(公司)网站系统 v4.2
2008-9-7 PBDigg v2.0 Build 20080821
2008-9-7 玩玩小游戏FLASH系统 v2.1
2008-9-7 522QQ在线电视直播程序 v1.1
2008-9-7 Pcook cms 文章管理系统 (老Y CM
2008-9-7 仿代码小说小偷系统 v1.0
2008-9-7 百度一搜集成搜索管理系统
2008-9-7 小贤统计器 v1.0
2008-9-7 UCenter Home-中秋搏饼插件 v1.2
2008-9-7 iBlacklist通话黑名单汉化破解补
2008-9-7 EndlessWalls无尽壁纸 v1.0.4破解
2008-9-7 Dynolicious车载测量仪v1.1破解版
2008-9-7 iVoodoo巫毒娃娃1.0.1破解版
2008-9-7 iWallpape精品墙纸1.2破解版
2008-9-7 iChillout自然音效工具1.1破解版
2008-9-7 Todo计划提醒1.2破解版
2008-9-7 allRadio电台集合1.01破解版
2008-9-7 My Money个人理财1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵