Spec-Zone.ru › GNU Fortran 12

8.80 CSHIFT — Циклический сдвиг элементов массива

Описание:

CSHIFT(ARRAY, SHIFT [, DIM]) выполняет циклический сдвиг элементов массива ARRAY вдоль размерности DIM. Если DIM опущено, оно принимается равным 1. DIM является скалярной величиной типа INTEGER в диапазоне 1 \leq DIM \leq n), где n — ранг массива ARRAY. Если ранг массива ARRAY равен единице, все элементы массива ARRAY сдвигаются на SHIFT позиций. Если ранг больше единицы, все полные одномерные сегменты массива ARRAY вдоль заданной размерности сдвигаются. Элементы, смещенные с одного конца каждого одномерного сегмента, смещаются обратно с другого конца.

Стандарт:

Fortran 90 и выше

Класс:

Функция преобразования

Синтаксис:

RESULT = CSHIFT(ARRAY, SHIFT [, DIM])

Аргументы:
ARRAY Должен быть массивом любого типа.
SHIFT Тип должен быть INTEGER.
DIM Тип должен быть INTEGER.
Возвращаемое значение:

Возвращает массив того же типа и ранга, что и аргумент ARRAY.

Пример:
program test_cshift
    integer, dimension(3,3) :: a
    a = reshape( (/ 1, 2, 3, 4, 5, 6, 7, 8, 9 /), (/ 3, 3 /))
    print '(3i3)', a(1,:)
    print '(3i3)', a(2,:)
    print '(3i3)', a(3,:)    
    a = cshift(a, SHIFT=(/1, 2, -1/), DIM=2)
    print *
    print '(3i3)', a(1,:)
    print '(3i3)', a(2,:)
    print '(3i3)', a(3,:)
end program test_cshift

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-12.1.0/gfortran/CSHIFT.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API