給定區(qū)間[a1,a2]和[b1,b2],若a2≥b1,則認(rèn)為這兩個(gè)區(qū)間是有重疊的,可進(jìn)行合并。如區(qū)間[1,3]和[2,6]可合并為[1,6];區(qū)間[1,6],[2,5]可合并為[1,6];區(qū)間[1,4]和[4,5]可合并為[1,5]。 編寫一個(gè)“合并重疊區(qū)間”的VB程序,功能如下:在文本框Text1中按各區(qū)間起始值升序依次輸入各區(qū)間的起始值和終止值(數(shù)據(jù)都用逗號(hào)分隔并以逗號(hào)結(jié)尾),單擊“確定”按鈕后,在Text2中顯示合并后的各個(gè)區(qū)間。例如,在文本框Text1中輸入“1,2,3,5,4,6,9,12,10,11,”,表示區(qū)間[1,2],[3,5],[4,6],[9,12],[10,11],合并后的區(qū)間分別為[1,2],[3,6],[9,12].程序運(yùn)行界面如圖所示,實(shí)現(xiàn)上述功能的VB代碼如下: Const n=100 Private Sub Cmd1_Click ( ?。?br />Dim i As Integer,k As Integer,L As Integer,R As Integer Dim s As String,c As String,t As String,result As String Dim a(1 To n) As Integer s=①:t=″″:k=0 For i=1 To Len(s) c=Mid(s,i,1) If c<>″,″Then ② Else k=k+1 a(k)=Val(t) t=″″ End If Next i L=a(1):R=a(2) i=3 Do While i<=k If a(i)>R Then result=result+″(″+Str(L)+″,″+Str(R)+″),″ L=a(i):R=a(i+1) R=a(i+1) End If ③ Loop result=result+″(″+Str(L)+″,″+Str(R)+″),″ Text2.Text=result End Sub (1)碼中①②③橫線處代碼補(bǔ)充完整。 ①
1.大部分社交軟件都有好友推薦的功能,當(dāng)用戶 A 和用戶 B 的共同好友數(shù)量超過(guò)閾值 p 時(shí),由系統(tǒng)向用戶 A 推薦用戶 B。 編寫 VB 程序,實(shí)現(xiàn)好友推薦功能。運(yùn)行程序,列表框 Listl 中顯示用戶 id 及好友列表,在文本框 Textl 中 輸入推薦目標(biāo)用戶 id,在文本框 Text2 中輸入閾值 p,點(diǎn)擊“推薦”按鈕,在列表框List2 中顯示用戶之間的關(guān)系,在標(biāo)簽 Label5 中顯示向目標(biāo)用戶推薦的好友列表。程序運(yùn)行界面如圖: (1)根據(jù)如圖所示數(shù)據(jù),若輸入用戶 id 為“3”,輸入閾值為“3”,則推薦好友為: