。 (2)根據(jù)上述算法描述,用VB程序?qū)崿F(xiàn)代碼如下,請在畫線處填入合適的代碼。 Const n=5'常量n存儲小矩形個數(shù) Dim a(1 To 2*n)As Integer'存儲每個小矩形給定X軸坐標(biāo) Dim b(1 To 2*n)As Integer'存儲每個小矩形給定Y軸坐標(biāo) Private Sub Form_Load
( )
( )
'本過程讀取每個小矩形X軸坐標(biāo)存儲在數(shù)組a中、每個小矩形Y軸坐標(biāo)存儲在數(shù)組b中,并在List1中顯示代碼略 End Sub Private Sub Command1_Click
( )
( )
Dim c(1 To 4*n)As Integer'存儲每個小矩形所有X軸坐標(biāo),1~2*n存左下和右上,2*n+1~4*n存左上和右下 Dim d(1 To 4*n)As Integer'存儲每個小矩形所有Y軸坐標(biāo),1~2*n存左下和右上,2*n+1~4*n存左上和右下 Dim mc(1 To 4*n)As Integer'記錄所有坐標(biāo)是否成對重復(fù),不重復(fù)為1,重復(fù)為0 Dim temp As Integer Dim i As Integer,j As Integer,f As Integer Dim sum As Integer,sumt As Integer,count As Integer For i=1 To 2*n Step 2 sum=sum+(a(i+1)-a(i))*(b(i+1)-b(i)) Next i f=1 For i=1 To 2*n c(i)=a(i) c(n*2+i)=a(i) d(i)=b(i) d(n*2+i)=b(i+f) ①
f=-f
f=-f
Next i For i=1 To 4*n-1 For j=1 To 4*n-i If c(j)>c(j+1)Or c(j)=c(j+1)And d(j)>d(j+1)Then temp=c(j):c(j)=c(j+1):c(j+1)=temp temp=d(j):d(j)=d(j+1):d(j+1)=temp End If Next j Next i sumt=②
Abs(c(4*n)-c(1))*Abs(d(4*n)-b(1))
Abs(c(4*n)-c(1))*Abs(d(4*n)-b(1))
If sum<>sumt Then Label1.Caption=“不能精確構(gòu)建” Exit Sub'結(jié)束當(dāng)前過程,不再執(zhí)行后續(xù)程序 Else For i=1 To 4*n mc(i)=1 Next i i=1 Do While i<4*n If c(i)=c(i+1)And d(i)=d(i+1)Then mc(i)=0:mc(i+1)=0 i=i+2 Else i=i+1 End If Loop count=0 For i=1 To 4*n ③
count=count+mc(i)
count=count+mc(i)
Next i If count=4 Then Label1.Caption=“能精確構(gòu)建“Else Label1.Caption=“不能精確構(gòu)建” End If End Sub
1.大部分社交軟件都有好友推薦的功能,當(dāng)用戶 A 和用戶 B 的共同好友數(shù)量超過閾值 p 時,由系統(tǒng)向用戶 A 推薦用戶 B。 編寫 VB 程序,實現(xiàn)好友推薦功能。運行程序,列表框 Listl 中顯示用戶 id 及好友列表,在文本框 Textl 中 輸入推薦目標(biāo)用戶 id,在文本框 Text2 中輸入閾值 p,點擊“推薦”按鈕,在列表框List2 中顯示用戶之間的關(guān)系,在標(biāo)簽 Label5 中顯示向目標(biāo)用戶推薦的好友列表。程序運行界面如圖: (1)根據(jù)如圖所示數(shù)據(jù),若輸入用戶 id 為“3”,輸入閾值為“3”,則推薦好友為: