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

lua编程练习(猜数字游戏)

lua编程练习(猜数字游戏)

C
傅里叶变坏 2016-11-30 17:38:12
function back(table1,table2) local a,b=0,0 for i=0,#table1 do for j=0,#table2 do if table2[j]==table[i] then a=a+1 if i==j then   b=b+1 end end end end return a,bend该段代码功能:比较两个表中相同元素个数(代码中a)和相同元素且下标相同的个数(代码中b),如table1={1,2,3,4},table2={1,3,5,4}则a=3,b=2问题:a,b返回值总是等于0
查看完整描述

1 回答

?
慕瓜5323351

TA贡献1条经验 获得超1个赞

总共有两处错误:第一lua表的下标是从1开始而不是从0;第二if table2[j]==table[i]这里错了,table[i]改成table1[i]才对

function back(table1,table2)
 local a,b=0,0
 for i=1,#table1 do

  for j=1,#table2 do
   if table2[j]==table1[i] then
    a=a+1
    if i==j then
     b=b+1
    end
   end
  end
 end
 return a,b
end
table1={1,2,3,4}
table2={1,3,5,4}
t1,t2=back(table1,table2)
print(t1,t2)


查看完整回答
1 反对 回复 2020-03-19
  • 1 回答
  • 0 关注
  • 2337 浏览

添加回答

举报

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