如题,输入坐标后输出,以,隔开的格式,要是有人把代码写出来就好了
代码如下,有帮助麻烦点个采纳【本回答右上角】,谢谢~~
Imports System.Linq
Imports System.Collections.Generic
Module Module1
''' <summary>
''' 移除重复坐标
''' </summary>
''' <param name="arr">拆分后的坐标数组</param>
''' <returns></returns>
Function removeRepeat(arr)
Dim l = arr.Length
Dim list As List(Of String)
list = New List(Of String)
For i = 0 To l - 1 Step 3 '3个一组压入list中
list.Add(arr(i) & "," & arr(i + 1) & "," & arr(i + 2))
Next
Dim rs = list.Distinct() '去重
removeRepeat = String.Join(",", rs) '重新组合
End Function
Sub Main()
Console.WriteLine("请输入坐标,中文状态下逗号分隔")
Dim s = Console.ReadLine()
Dim arr = s.Split(",")
Dim l = arr.Length
If l Mod 3.0 <> 0 Then
Console.WriteLine("数据错误,坐标项需要为3的倍数!")
Else
s = removeRepeat(arr)
Console.WriteLine("去重后:" & s)
End If
Console.ReadKey()
End Sub
End Module
这个是VBScript的,理论上vb6应该也可以用,你试试
Function removeRepeat(s)
arr=split(s,",")
l=ubound(arr)
if (l+1) mod 3<>0 then
removeRepeat="数据错误,坐标项需要为3的倍数!"
exit function
end if
ns=""
For i = 0 To l Step 3 '3个一组压入list中
item=arr(i) & "," & arr(i + 1) & "," & arr(i + 2)
if instr(ns,item)=0 then
ns=ns&","&item
end if
Next
removeRepeat = right(ns,len(ns)-1)'去掉一个逗号
End Function