| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1524 人关注过本帖
标题:求代码,求思路????
只看楼主 加入收藏
Anna是Anna
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-6-3
结帖率:0
收藏
已结贴  问题点数:5 回复次数:5 
求代码,求思路????
今年健康明年疾病的概率为0.2,今年健康明年健康的概率为0.8,今年疾病明年疾病概率为0.3,今年疾病明年健康的概率为0.7.编程求今年健康n年后健康或疾病的概率???
搜索更多相关主题的帖子: 健康 
2016-06-03 10:09
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:2 
就四个数据:0.2  0.8  0.3  0.7 不太容易看出这几个数字之间的变化规律啊,没有数据了吗?可以多提供几项,也好分析该数列的变化规律,就能设计算法了。简单来看,奇数位依次增加0.1,偶数位依次减少0.1;全数列先小后大再小再大,相邻两数间相差依次:0.6, 0.5, 0.4,当年的两数和为1
你要多给几项才好判断哪个规律是最符合的哦

[此贴子已经被作者于2016-6-3 11:00编辑过]

2016-06-03 10:50
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:2 
不确定算法对不对,应该差不多

程序代码:
#include "stdio.h"

/*
    设第n年健康概率为a(n),疾病概率为b(n),
    那么a(1) = 1,b(1) = 0,
    第n+1年健康的概率为a(n)*0.8+b(n)*0.7
    第n+1年疾病的概率为b(n)*0.2+b(n)*0.3
*/

int main()
{
    int n,i;
    double a = 1,b = 0;

    printf("请输入经过年数:");
    scanf("%d",&n);
    for (i = 0; i < n; i ++)
    {
        a = a*0.8 + b*0.7;
        b = 1 - a;
    }    
    
    printf("%d年后健康的概率是%lf",n,a);
}  
2016-06-03 10:58
lianyicq
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:26
帖 子:737
专家分:3488
注 册:2013-1-26
收藏
得分:2 
只给你最直接的思路,后面的自己做。
图片附件: 游客没有浏览图片的权限,请 登录注册

大开眼界
2016-06-03 14:03
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:2 

f(0)=1
f(n+1) = 0.8*f(n) + 0.7*(1-f(n))
推导出通项公式
f(n) = ( 7*10^n + 2 ) / ( 9*10^n )
2016-06-03 16:07
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:0 
所以,结果就很简单了
f(0) = 1
f(1) = 0.8
f(2) = 0.78
f(3) = 0.778
f(4) = 0.7778
……
f(0)是个特例,其后就是0.开头,接着n-1个7,最后一个8
2016-06-03 16:22
快速回复:求代码,求思路????
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018076 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved