为了账号安全,请及时绑定邮箱和手机立即绑定

从 2D 数组中随机的最大和最小数字查找 2D 数组索引

从 2D 数组中随机的最大和最小数字查找 2D 数组索引

幕布斯7119047 2024-01-25 15:21:35
所以我只是想愚弄二维数组,我对一件事感到好奇我编写了一个代码来返回二维数组中随机的最大和最小数字的索引,我尝试了 *10,它工作得很好,但是当我尝试将其乘以 100 时,最大数字有效,但最小数字无效工作,我一直来回寻找,只是找不到它,这是我的代码,我实际上在上一个问题的答案部分中问过这个问题,但它被删除了,所以我必须再次问一个问题,对不起,我刚刚开始前几天出去了,有很多问题要问对于最小数量, 请在此处输入图像描述对于最大数量, 请在此处输入图像描述int[][] mdArray = new int[5][5];int i =0;int j =0;int min = 0;for(i=0; i<mdArray.length; i++){    for(j=0; j<mdArray[i].length; j++) {        mdArray[i][j] = (int)(Math.random()*100);        System.out.print(mdArray[i][j] + " ");        if(min>mdArray[i][j])        {            min= mdArray[i][j];        }    }    System.out.println("");}System.out.println("");for(i=0; i<mdArray.length; i++){    for(j=0; j<mdArray[i].length; j++){        if(mdArray[i][j] == min) {            System.out.println("["+i+"]"+"["+j+"]");        }    }}
查看完整描述

2 回答

?
qq_笑_17

TA贡献1818条经验 获得超7个赞

它没有找到,min因为min是从 0 开始,这意味着它已经低于您的任何随机数。


Min需要从 100 开始,max需要从 0 开始。


int[][] mdArray = new int[5][5];

int i = 0;

int j = 0;

int min = 100;


for(i = 0; i < mdArray.length; i++){

    for(j = 0; j < mdArray[i].length; j++) {

        mdArray[i][j] = (int)(Math.random()*100);

        System.out.print(mdArray[i][j] + " ");


        if(min>mdArray[i][j])

        {

            min= mdArray[i][j];

        }

    }

    System.out.println("");

}


System.out.println("");

for(i = 0; i < mdArray.length; i++){

    for(j = 0; j < mdArray[i].length; j++){

        if(mdArray[i][j] == min) {

            System.out.println("["+i+"]"+"["+j+"]");

        }

    }

}


查看完整回答
反对 回复 2024-01-25
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

这是因为您min用零进行初始化,并且数组中没有任何内容低于零。尝试用 初始化它Integer.MAX_VALUE



查看完整回答
反对 回复 2024-01-25
  • 2 回答
  • 0 关注
  • 81 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信