| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2343 人关注过本帖
标题:[求助]矩阵,猜数和对称数问题
只看楼主 加入收藏
vvex
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-12-25
收藏
 问题点数:0 回复次数:16 
[求助]矩阵,猜数和对称数问题

1、 如果矩阵A中存在这样的一个元素A[i][j]满足下列条件:A[i][j]是第i行中值最小的元素,且又是第j列中值最大的元素,则称之为该矩阵的一个马鞍点。编写一个程序计算出矩阵A的所有马鞍点,以及其位置。

2、一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上又出现了一个新的对称数。编写一个程序求该车的速度以及这新的对称数。

3、编写一个人机猜数游戏,游戏玩法如下:

由计算机“想”一个四位数,请人猜这个四位数是多少。人输入四位数字后,计算机首先判断这四位数字中有几位是猜对了,并且在对的数字中又有几位位置也是对的,将结果显示出来,给人以提示,请人再猜,直到人猜出计算机所想的四位数是多少为止。
例如:计算机“想”了一个“1234”请人猜,可能的提示如下:
人猜的整数 计算机判断有几个数字正确 有几个位置正确
1122 2 1
3344 2 1
3312 3 0
4123 4 0
1243 4 2
1234 4 4
游戏结束

搜索更多相关主题的帖子: 矩阵 left align 中值 元素 
2007-05-08 21:06
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
2.95859--->95959--->96069(这个数已经不太可能了,时速已经100多了.)

倚天照海花无数,流水高山心自知。
2007-05-08 21:42
crackerwang
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:833
专家分:0
注 册:2007-2-14
收藏
得分:0 
以下是引用nuciewth在2007-5-8 21:42:04的发言:
2.95859--->95959--->96069(这个数已经不太可能了,时速已经100多了.)

想起一句话:"纯是为了出题而出题"


2007-05-08 21:45
zkkpkk
Rank: 2
等 级:论坛游民
威 望:5
帖 子:489
专家分:28
注 册:2006-6-17
收藏
得分:0 
这时速怎么看啊95859单位是多少

Viva,espana!
2007-05-08 21:45
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
没看过记程车.

倚天照海花无数,流水高山心自知。
2007-05-08 21:52
编程怪兽
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-4-28
收藏
得分:0 
第一题挺简单的,用循环吧可以实现的
先找到每一行中最小的元素a[i][j],在判断它在这个j列是否是最大元素。
如果是就输出i,j和a[i][j],
其他的明天再说

2007-05-08 22:50
编程怪兽
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-4-28
收藏
得分:0 
回复:(vvex)[求助]矩阵,猜数和对称数问题
你怎么知道时速的?
我很想知道啊!



2007-05-08 22:52
YOGIOH
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2007-5-8
收藏
得分:0 
回复:(vvex)[求助]矩阵,猜数和对称数问题

这个是我做的第三题
本人是新手
做的可能复杂了
不过也因此我有了个问题
rand()得出的数并不是真正意义上的随机,每次得的数都一样,有什么函数可以真正随机的吗
问题解决了 谢谢feng1256的帮助
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<time.h>
#define N 5
void getnum(char *);
void input(char *);
void output(char *,int,int);
void main()
{
char a[N]={0};
getnum(a);
input(a);

}

void getnum(char *a)
{
int i;
srand((unsigned)time(NULL));
for(i=0;i<N-1;i++)a[i]=rand()%10+48;
a[i]='\0';
puts(a);

}
void input(char *a)
{
char b[N]={0};

int i,j,m,n;
do
{
i=0,n=0,m=0;
int d[10]={'\0'};

printf("input the numeber x:");
gets(b);
if(b[0]=='E')exit(0);
for(j=0;j<N-1;j++)
{
if(a[j]==b[j])m++;
switch(b[j])
{
case '0': d[0]++;break;
case '1': d[1]++;break;
case '2': d[2]++;break;
case '3': d[3]++;break;
case '4': d[4]++;break;
case '5': d[5]++;break;
case '6': d[6]++;break;
case '7': d[7]++;break;
case '8': d[8]++;break;
case '9': d[9]++;break;
}
}
for(j=0;j<10;j++)if(d[j]!=0)for(i=0;i<N-1;i++)if((j+48)==a[i])n++;

output(b,n,m);
}while(n<4||m<4);
getch();

}


void output(char *b,int n,int m)
{
printf("\n");
printf("-------------------------------------------------------\n");
printf("inputnumeber numbercorrect positioncorrect\n");

printf(" %s %d %d\n",b,n,m);
}

[此贴子已经被作者于2007-5-9 15:59:42编辑过]


2007-05-09 14:33
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用YOGIOH在2007-5-9 14:33:25的发言:
rand()得出的数并不是真正意义上的随机,每次得的数都一样,有什么函数可以真正随机的吗

可以初始化种子或者用另一函数 可以保证每次运行产生的随机数不同而已

真正的随机数不存在


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2007-05-09 14:45
zkkpkk
Rank: 2
等 级:论坛游民
威 望:5
帖 子:489
专家分:28
注 册:2006-6-17
收藏
得分:0 
马鞍数应该不难啊固定J猛+I看是不是最小,是了以后固定I猛增J看是不是最大

随机数可以用系统时间做种最好取到毫秒然后平方取中,我在C#块发的就是这样做的

Viva,espana!
2007-05-09 23:28
快速回复:[求助]矩阵,猜数和对称数问题
数据加载中...
 
   



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

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