易语言遍历两个数组成员保留不重复数据

数组比较模块源码

.版本 2
 
.子程序 数组比较
.参数 arrA, 整数型, 数组
.参数 arrB, 整数型, 数组
.参数 retArr, 整数型, 参考 数组
.局部变量 c, 整数型, , "0"
.局部变量 d, 整数型, , "0"
.局部变量 n, 整数型
.局部变量 m, 整数型
.局部变量 x
.局部变量 y
.局部变量 取数组成员数
 
x = 取数组成员数 (arrA)
y = 取数组成员数 (arrB)
.如果 (x < y)
    x = 取数组成员数 (arrA)
    y = 取数组成员数 (arrB)
    d = arrA
    arrA = arrB
    arrB = d
.否则
.如果结束
x = 取数组成员数 (arrA)
y = 取数组成员数 (arrB)
.计次循环首 (x, m)
    .计次循环首 (y, n)
        .如果真 (arrA [m] = arrB [n])
            ' 调试输出 (b [n])
            加入成员 (c, arrB [n])
 
 
        .如果真结束
    .计次循环尾 ()
.计次循环尾 ()
p (c)
retArr = c

数组去重复模块源码:

.版本 2
 
.子程序 p
.参数 arr, 整数型, 数组,  
.局部变量 n, 整数型
.局部变量 m, 整数型
.局部变量 i, 整数型
 
数组排序 (arr,)
n = 取数组成员数 (arr)
m = 0
i = 1
.判断循环首 (i ≤ n)
    m = m + 1
    arr [m] = arr [i]
    .循环判断首 ()
        i = i + 1
        .如果真 (i > n)
            跳出循环 ()
        .如果真结束
    .循环判断尾 (arr [m] = arr [i])
.判断循环尾 ()
重定义数组 (arr,, m)

测试调用

.版本 2
.支持库 spec
.局部变量 a, 整数型, , "0"
.局部变量 b, 整数型, , "0"
.局部变量 c, 整数型, , "0"
a = { 1, 2, 3, 4, 5, 6, 7 }
b = { 4, 5, 6, 7, 5, 6 }
数组比较 (a, b, c)
调试输出 (c)

输出:数组:4{4,5,6,7}


发布日期:

所属分类: 易语言 标签: