加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 数组中的最大值和最小值

发布时间:2020-12-17 01:52:50 所属栏目:百科 来源:网络整理
导读:我编写了一个 Ruby代码来从数组中获取最大值和最小值.代码打印最大值(8)正确,但它不打印最小值(2).请告诉我代码中出了什么问题. class MaxMinArray def MaxMinMethod() array = [4,2,8,3,5] maxNo = array[0] minNo = array[0] arrayLength = array.length f
我编写了一个 Ruby代码来从数组中获取最大值和最小值.代码打印最大值(8)正确,但它不打印最小值(2).请告诉我代码中出了什么问题.

class MaxMinArray
  def MaxMinMethod()
    array = [4,2,8,3,5]
    maxNo = array[0]
    minNo = array[0]
    arrayLength = array.length
    for i in 1..arrayLength
      if array[i].to_i > maxNo
        maxNo = array[i]
      end
      if array[i].to_i < minNo
        minNo = array[i]
      end
    end
    puts "Maximum no. in the given array: " + maxNo.to_s
    puts "Minimum no. in the given array: " + minNo.to_s
  end
end

MaxiMinArrayObj = MaxMinArray.new
MaxiMinArrayObj.MaxMinMethod()

解决方法

这是两件事的结合.

>首先,你在1..arrayLength中迭代i,迭代遍历数组中的最后一个元素.在最后一个元素之后,array [i]为nil.>其次,如果array [i] .to_i< minNo,即使array [i]不是数字也可以满足. 因此,由于nil.to_i为0,所以在最后一个元素之后由array [i]返回的nil满足条件,并且将nil分配给minNo.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读