' arr(first) = arr(first) (itself) * arr(next);
' arr(last) = prev * arr(last) (itself);
Imports System
Public Class Program
Public Shared Sub MultiplyNextPrevious(ByVal arr As Integer())
Dim size As Integer = arr.Length
If size <= 1 Then
Return
End If
Dim prev As Integer = arr(0)
arr(0) = arr(0) * arr(1)
For i As Integer = 1 To size - 1 - 1
Dim curr As Integer = arr(i)
arr(i) = prev * arr(i + 1)
prev = curr
Next
arr(size - 1) = prev * arr(size - 1)
End Sub
Public Shared Sub Main(ByVal args As String())
Dim arr As Integer() = New Integer() {2, 3, 5, 6, 12, 8, 10, 7}
MultiplyNextPrevious(arr)
For i As Integer = 0 To arr.Length - 1
Console.Write(arr(i) & " ")
Next
End Sub
End Class
' run:
'
' 6 10 18 60 48 120 56 70
'