program main integer, parameter :: n = 1000000 integer :: k integer :: summe !$omp parallel do reduction(+:summe) default(shared), private(k) do k=1, n, +1 summe = summe + k**k enddo !$omp end parallel do write (*,*) summe end program