16.設有n盞燈,放在一排.從1到n依次順序編號.有n個人也從1到n依次編號.第1個人(1號)將燈全部關閉,第2個人(2號)將2的倍數的燈打開,第3個人(3號)將編號為3的倍數的燈做相反處理(該燈如果已打開,則將它關閉;如為關閉則將它打開),以后的人和3號一樣,將編號為自己號數倍數的燈做相反處理.問當n個人操作后,哪幾盞燈是亮的(亮燈為0,關閉為1).程序代碼如下: Private Sub Command1_Click( ) Const n=20 Dim i As Integer,j As Integer Dim a(1 To n) As Integer For j=1 To n a(j)=0 Next j For i=1 To n For j=1 To n If ①then ② End If Next j Next i For j=1 To n If a(j)=0 Then list1.AddItem Str(j) Next j End Sub 為了實現程序該功能,在橫線處填寫正確代碼. ①
Const n=7 Dim h2(1 To n) As Integer Dim height1(1 To n) As Integer Dim height2(1 To n) As Integer Dim i As Integer,j As Integer,temp As Integer Dim sex(1 To n) As Boolean'男生sex=true Private Sub Form_Loa d( ) 'n名學生的身高和性別由數據庫導出,分別存儲在數組height1 和sex中,代碼略! End Sub Private Sub Command1_Click( ) For i=1 To n-1 For j=n To i+1 Step-1 If
Then temp=height1(j):height1(j)=height1(j-1):height1(j-1)=temp End If Next j Next i For i=1 To n Text1.Text=Text1.Text+““+Str(height1(i)) Next i End Sub Private Sub Command2_Click( ) Dim left,right As Integer,i As Integer,mid As Integer mid=Int((1+n)/2) left=0:right=0
For i=2 To n Step 2 right=right+1 height2(mid+right)=height1(i) left=left+1
Next i For i=1 To n Text2.Text=Text2.Text+““+Str(height2(i)) Next i End Sub.