【发布时间】:2019-12-14 12:03:51
【问题描述】:
我有一个交易数据数组:
transactions = [50_000, -2_000, -25_000, 4_000, -12_000, 5_000, -800, -900, 43_000, -30_000, 15_000, 62_000, -50_000, 42_000]
我想从该列表中检索最大的负数(最小的提款)和最小的正数(最小的存款)。取款用负数表示。存款都是正数。
我无法理解获得所需结果所需的逻辑(最小提款和最小存款)
下面,我目前从数组中获得最大的取款和最大的存款:
smallest_withdrawal = 0
transactions.each do |transaction|
if transaction < smallest_withdrawal
smallest_withdrawal = transaction
end
end
puts smallest_withdrawal
smallest_deposit = 0
transactions.each do |transaction|
if transaction > smallest_deposit
smallest_deposit = transaction
end
end
puts smallest_deposit
我没有收到错误消息,但我没有得到我想要的结果,而是得到了相反的结果。我需要逻辑运算符方面的帮助。
【问题讨论】:
-
是否保证至少有一次存款和一次取款?如果不是,如果没有这两种类型,返回什么?