Решаем задачи Абрамян на Паскале. Array81

Array81. Дан массив размера $$N$$ и целое число $$K$$ ($$1 \leq K \lt N$$). Осуществить сдвиг элементов массива вправо на $$K$$ позиций (при этом $$A_1$$ перейдет в $$A_{K+1}$$, $$A_2$$ — в $$A_{K+2}$$, $$…$$, $$A_{N-K}$$ — в $$A_N$$, а исходное значение $$K$$ последних элементов будет потеряно). Первые $$K$$ элементов полученного массива положить равными $$0$$.

Решение:

 

Решение olegst1975:

 

Задачи из раздела Array  можно посмотреть здесь.

Комментарии:

Комментарии 5

  • Строка 21:
    for i:=N downto k+1 do a[i]:=a[i-k];
    или совместить два цикла
    for i:=n downto 1 do if i>k then a[i]:=a[i-k] else a[i]:=0;

  • Поправил.

    и добавил второе решение до кучи.

  • Добрый день!
    А не подскажите, как сделать, чтобы первые К элементов были не нулевые, а равнялись последним элементам первоначального массива?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *