| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1432 人关注过本帖
标题:老师布置的作业 求高手解答
只看楼主 加入收藏
nzxiansheng
Rank: 2
等 级:论坛游民
帖 子:36
专家分:56
注 册:2012-5-20
收藏
得分:1 
//看下面

[ 本帖最后由 nzxiansheng 于 2012-6-2 21:10 编辑 ]
2012-06-02 20:56
nzxiansheng
Rank: 2
等 级:论坛游民
帖 子:36
专家分:56
注 册:2012-5-20
收藏
得分:0 
#include  <stdio.h>

int   games(const int i);
int   main(void)
{
    const int  data = 0;
    int   count;
   
    do{
    printf("输入一个要猜的数值,不要大于1000:");
    scanf("%d",&data);
    }while (data > 1000);
   
    for (count = 0; count < 5;count++)
    {
        
        switch (games(data))
        {
        case  -1 : printf("价格低了\n");break;
        case  0  : printf("价格高了\n");break;
        case  1  : count = 10;break;
        }
    }
     if(count < 5)
       printf("对不起猜数次数到了!\n");
     else
       printf("恭喜你猜对了!\n");
     return  0;
}
int   games(const int i)
{
    int   k;
   
    printf("请输入猜值:");
    scanf("%d",&k);

    if (k > i)
    return  0;
    else
    if (k == i)
        return  1;
    else
        return -1;
   
}


[ 本帖最后由 nzxiansheng 于 2012-6-2 21:10 编辑 ]
2012-06-02 20:57
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
各位 条件是猜的人要用一定的方法去猜 也就是有个很聪明的方法尽量使猜到的几率变大 不是乱猜啊

梅尚程荀
马谭杨奚







                                                       
2012-06-02 21:11
nzxiansheng
Rank: 2
等 级:论坛游民
帖 子:36
专家分:56
注 册:2012-5-20
收藏
得分:0 
回复 13楼 有容就大
没懂你什么意思 !   可以 详细 讲解下么?
2012-06-02 21:13
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
250 和 469之间有那么多数 一次加一 或者 一次减一 拿不得累死。

梅尚程荀
马谭杨奚







                                                       
2012-06-02 21:13
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
如果猜了400 小了 下面你打算猜多少 401? 450? 499?
猜450 小了 你又打算猜多少? 这样运气不好 5次很快就用光了。

梅尚程荀
马谭杨奚







                                                       
2012-06-02 21:17
nzxiansheng
Rank: 2
等 级:论坛游民
帖 子:36
专家分:56
注 册:2012-5-20
收藏
得分:0 
回复 16楼 有容就大
  难道  要告诉用户  想差多少?
2012-06-02 21:20
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 17楼 nzxiansheng
知道相差多少就不要猜了。 所以说猜的人要想个办法 尽快找着这个要猜的数。

梅尚程荀
马谭杨奚







                                                       
2012-06-02 21:22
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
呵呵,有容,他考虑的是楼主的问题。我的属于拔高题,你俩说的不是一件事。

重剑无锋,大巧不工
2012-06-02 21:31
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 19楼 beyondyf
杨大哥 我的想法是用2分法猜4次(4次都没猜中的情形下)后能确定一个 相对最小的范围
1000
500
250
125
63    最后一次猜中的几率就是 1/63了 。

梅尚程荀
马谭杨奚







                                                       
2012-06-02 21:37
快速回复:老师布置的作业 求高手解答
数据加载中...
 
   



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

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