program y888 implicit none integer(8)::N,N_sqrt,i integer(8)::result=0 read(5,*)N N_sqrt=int(sqrt(real(N))) do i=1,N_sqrt if(mod(N,i)==0)then result=result+i if(i/=N/i)then result=result+N/i end if end if end do print'(i0)',result end program y888