Циклический сдвиг массива паскаль
������
�������� �������, ������� ���������� �������� ���������� ������ ������ ��� ����� �� ��������� ����� �������. ����� ����� ������ ���� ���������, �� ���� �� ��������, ������� ������ ������ ��� ����� �� ������� �������, ������ ���������� � ������� ��� �����.
��������, ��� ������:
1 2 3 4 5 6
��������� ����� ������ �� 2 �������:
5 6 1 2 3 4
�������
- a, m – ������ (m – � �������);
- q, p – ���������� ��������� ������� (p – � �������);
- b – ���������� ��� �������� ������� ��� ���������� �������� �������.
�������� ������� ������:
���� ���������� p ����� ��������� ������������� ��������, �� ����� ����� ����� ����������� �����. ���� �������������, �� ������.
���������� �������� ���������� p – ��� ���������� ����� ������. ���� �� ���� �������� �������� ����� ����������� ����� �� ���� ���, �� �������� p ���������� ���������� �������� �������� �����.
����� ���� �������� ������ ���� �������� �����:
���� ����� ���������� �����, �� �� ����� ������� �������� ���������� ������, �� ����� ������� – ������ � ��� �����. ��� ��������� ������ �� ����� ���������� ������ ����� ������. ��� ��� �� ����� ���������� �������� ������������ ��������� �� ���, �� ������ ������� ��������. ������� ��� ���� ��������� �������� �� ���������� ����������� �����. ���������� ���� ����������� �� �������������� �������� ������������. �� ������������� �������� �� ��� ����� ������������ ���������. ����� ����������� ����� �� ����� ���������� �������� ������������ ����� ����������� ������ �������.
���� �� ����� ���������� ������, �� ������ ������� ����� �� ����� �������, ������ ��������� �� ����� �������� � �. �. � ������ ������, ����� �� �������� ��������, ����� �������� � �����. �� ����� ���������� �������� �������������, ����� �� ����� �������������� – ��� ��� ����� ��� � �.�. � ����� ������ ���������� ������ ��������� �������, ��� ������� ��������� �� ���������� ����������� �����. ���� ����� ����������� �� ���������� �������� �� �������. �� ��������� �������� ����������� ����� �� ����� ������� �������� ��������� ������ �������. ����� ����� ������� �� ����� ������� �������� �������� ����� ����������� ���������.
�������� �������� ������� � ��������� ����������� (����� ��� ������) � �� ��������� ����� �����. �������������� ������ ��������� ������. �������� ������ ����� ������� ����.
���� ������ ���������� �� ���� ��� �����, �� �� ����� �������� � �������� i ������������ ��� �������, ������� ��������� �� ����� i+1. �� ���� �� ����� �������� �������� ������������ ��������� �� ���. � ��������� ������ ������� ���������� ������. �� ������� ������ ���� ������� �������� ����� 0.
����� �������, ����� ������� �� ���� ��� ����� – ��� ���� �� ������� �������� �� �������������� ������������, � ���� �������� ���������� ������ �������� �� ��������� ������ � ������� ������ ( arr[i] := arr[i+1] ). � ������������� ������ ������������ ��������� �������. ����� ����� ������������� 0 � ��������� ������ �������.
���� ������ ���������� �� ���� ��� ������, �� ��� ������� "����������" � �����. �� ����� �������� i ������������� ������� ����� ��� (i-1). � �������������� ������ ������ ������������ ����.
����� ������� �� ���� ��� ������ – ��� ���� �� ���������� �������� �� ������� ������������, � ���� �������� ���������� ������ �������� �� ���������� ������ � ������� ( arr[i] := arr[i-1] ). ����� ����� � ������ ������ ������� ������������ ����.
���������� ����� ������ ������������ ������� ������.
�������� ������� ������ ������ ����� ������� ���:
- ��������� � ������������ ���������� ����� ������ � �����������. ����������, ��� ���� �������� ������������� �����, �� ����� ����������� ����� �� ��������� ���������� ��������, ���� �������� ������������� �����, �� ����� ������.
- ��������� �������� ������ � ������� ��� �� �����.
- ��������� ������� ���� ������� ���, ������� ����� ���� �������.
- ���� ���� ������� ������������� �����, �� ��������� ���� �� ������� �������� �� ��������������, ����������� � ��� �������� ������ ��������� ������ �� �������� �����������. �������� � ��������� ������ 0.
- �����, ��������� ���� �� ���������� �������� �� �������, ��������� � ������ ������� ������ �������� ����������. � ������ ������ �������� 0.
- ������� �� ����� ������� ������.
���������� ������� ���������� ������ (����� �������� �� ������� ������� ������� ������������ � ������ ��� �������) ����� �����.
категории
- C/C++ 64
- Delphi/Pascal 1085
- Java 42
- Basic 786
- Assembler 13
- .NET 95
- JavaScript 9
- Perl 22
- PHP 101
- Ruby 2
- Python 18
- HTML/CSS 5
- SQL 1
- О программировании 1
Сдвиг влево на k элементов:
Сдвиг на k элементов вправо: