Project1

标题: 【已解决】禁用数字 [打印本页]

作者: 金芒芒    时间: 2024-6-22 07:28
标题: 【已解决】禁用数字
本帖最后由 金芒芒 于 2024-6-23 12:55 编辑

a = [2,3,4,5,6,7,8,9,10] 如果b[0]=[2]那么b[1],b[2],b[3],b[4]禁用a中德2并提示已被占用
作者: ppspssss2    时间: 2024-6-22 15:19
本帖最后由 ppspssss2 于 2024-6-22 15:24 编辑

只供参考我理解是 :
*你这里的a的2这个数字是a数组的0号元素,这里用a[0]代指a的2这个数字,然后是一个实例来,实例的类变量新增一个“禁止” 且已在初始化时为true
在赋值操作后。
if b[0] == a[0]
if b[1]== a[0] or b[2]== a[0] or b[3]== a[0] or b[4]== a[0]
a[0].禁用 = false #实例开关来,具体是什么要看实际这个我是作出来的  

p "提示已被占用"  #提示已被占用
end # if b[1]

else #不等于a[0]的元素的情况下

end #if b[0]
作者: 金芒芒    时间: 2024-6-22 15:34
本帖最后由 金芒芒 于 2024-6-22 15:39 编辑
ppspssss2 发表于 2024-6-22 15:19
只供参考我理解是 :
*你这里的a的2这个数字是a数组的0号元素,这里用a[0]代指a的2这个数字,然后是一个实 ...


那样脚本会无限长,可以用包括吗,而且a的元素可能大于一百,也就是说当b中出现a元素相等的值b中只能出现一次a中元素

作者: ppspssss2    时间: 2024-6-22 18:40
本帖最后由 ppspssss2 于 2024-6-22 18:50 编辑
金芒芒 发表于 2024-6-22 15:34


那样脚本会无限长,可以用包括吗,而且a的元素可能大于一百,也就是说当b中出现a元素相等的值b中只能出现 ...

对如果无限多的话,include就行了不用每个单独写
if b.include?(a[0]) #如果b中包含了a[0]元素 (无论多少个)
#"提示已被占用"

#===用于判断重复了多少次(可不看额外的)
b_临时数组 = b
b_临时数组.delete(a[0]) #删除b_临时数组中含a[0]的元素
得出重复了个数 = b.size - b_临时数组.size # 得出重复了a[0]的个数
p 得出重复了个数
#===用于判断重复了多少次(可不看额外的)
end#if b.include

如果想知道b中有多少个a[0]元素,我想到的方法先新增一个临时变量用于复制,再删除a[0],差值对比得到重复了多少次 (可不看额外的)
作者: 金芒芒    时间: 2024-6-22 22:52
本帖最后由 金芒芒 于 2024-6-22 23:33 编辑
ppspssss2 发表于 2024-6-22 18:40
对如果无限多的话,include就行了不用每个单独写
if b.include?(a[0]) #如果b中包含了a[0]元素 (无论多少 ...

def 刷新@a
@a=[8,9,10,11,15],
$c=@b[0],
如果@b[0]≠nil,注释$c=[15],@b=[[15],[nil],[nil],[nil],[nil]]
那删除@a中的元素$c[0],
插入@a[0]=$c[0],
然后禁用@a[0]
end。。。。脚本不知怎么写

:

作者: ppspssss2    时间: 2024-6-23 12:42
def 刷新@a
...
新增一个开关,如果 禁用_@a[0] ==  false  就执行以下的否则就 待你  禁用_@a[0] == true  return返回
...
我理解是大开关配小开关, 开关用处就是这样体现,一开以我以为开关没什么用, 可以用来一下次刷新时true跳转使用false就不跳转, 类似二元树



作者: 金芒芒    时间: 2024-6-23 12:55
ppspssss2 发表于 2024-6-23 12:42
def 刷新@a
...
新增一个开关,如果 禁用_@a[0] ==  false  就执行以下的否则就 待你  禁用_@a[0] == true  ...

谢谢大神OK已经可以了




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1