program lab9
integer, allocatable:: arr(:)
integer:: seed,m, nl,nr,key,r,i, z,k,l, output_,p,nf,i2,j
integer, allocatable:: a0(:), d(:),lr(:,:),ir(:),sd(:)
integer, allocatable:: karr1(:)
!open(newunit=output_,file='lab9.4.txt',status='replace',action='write')
call srand(seed)
nl=1
nr=10
allocate(a0(nl:nr))
do i= nl,nr
r=aint(rand()*200)
a0(i)=r
end do
write(*,'(a50)') 'неотсорт-й массив'
write(*,10) a0(nl:nr)
allocate(arr(nl:nr))
allocate(sd(nl:nr))
allocate(lr(nl,nr))
allocate(d(nl:nr))
arr=a0
p=10
do i2=1,nf
d(j)=0
lr(i,j)=0
do i=1,nr
do j=1,nr
k=arr(j)
d(j)=mod(k,p)
arr(i)=a0(i)/(p**(i2-1))
write(*,10) arr(i)
lr(i,j)=lr(i,j)+d(j)
write(*,10) lr(i,j)
sd=arr(i)
!write(*,10) sd(nl:nr)
a0=sd+lr(i,j)
end do
end do
end do
!do i=1,nf
! sd=0
! do j=1,p
! l=mod((arr(j)/10**i),10)
! sd(l)=arr(j)
! end do
! arr=0
! do m=1,p
! arr=arr+sd(m)
! end do
!end do
write(*,'(a100)') 'отсортированный массив'
write(*,10) (sd(i),i=nl,nr)
write(*,10) (a0(j),j=1,nr)
10 format (10(2x,i3))
deallocate(arr)
end program lab9