"Шейкер" - сортировка (перевод с псевдокода) - VB
Формулировка задачи:
напишите пожалуйста программу методом шейкера. можно только КОД программы. метод шейкера выглядит так. нужно просто написать на языке Visual Basic
Решение задачи: «"Шейкер" - сортировка (перевод с псевдокода)»
textual
Листинг программы
'program shakesort Sub shakesort() 'implicit none 'real(4) rand Dim rand(4) As Double 'integer(4),allocatable :: A(:) Dim a() As Integer 'integer N,j,t Dim N As Integer, j As Integer, t As Integer 'integer l,r Dim l As Integer, r As Integer ' 'write(*,*)'Enter N' 'read(*,*) N N = InputBox("N=") 'allocate (A(N)) ReDim a(1 To N) 'do j=1,N For j = 1 To N 'A(j) = N - j a(j) =rnd*n 'N - j 'write(*,'(i4)') A(j) Debug.Print a(j), 'enddo Next j 'write(*,'(8i4)') A Debug.Print 'write(*,'(3a)') ' ' 'l = 1 l = 1 'r = Size(A) - 1 r = UBound(a) - 1 'Do While (l < r) Do While l < r 'do j=l,r,1 For j = l To r If (a(j) > a(j + 1)) Then t = a(j) a(j) = a(j + 1) a(j + 1) = t End If 'end do Next j ' 'do j=r,l+1,-1 For j = r To l + 1 Step -1 If (a(j) < a(j - 1)) Then t = a(j) a(j) = a(j - 1) a(j - 1) = t End If 'enddo Next j l = l + 1 r = r - 1 'write(*,'(8i4)') A Debug.Print ' 'end do Loop ' 'write(*,'(8i4)') A 'deallocate (A) ' 'end program End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д