Untitled
unknown
plain_text
2 years ago
1.2 kB
6
Indexable
#include <stdio.h>
void inputArray(int* array, int size) {
for (int i = 0; i < size; ++i) {
scanf("%d", &array[i]);
}
}
void outputArray(int* array, int size) {
for (int i = 0; i < size; ++i) {
printf("%d ", array[i]);
}
printf("\n");
}
void rotateLeft(int* array, int size, int c) {
int realShift = c % size;
if (realShift < 0) {
realShift += size; // Превращаем отрицательный сдвиг в положительный эквивалент
}
int temp;
for (int i = 0; i < realShift; ++i) {
temp = array[0];
for (int j = 0; j < size - 1; ++j) {
array[j] = array[j + 1];
}
array[size - 1] = temp;
}
}
int main() {
int n, c;
printf("Введите количество элементов массива: ");
scanf("%d", &n);
int array[n];
printf("Введите элементы массива: ");
inputArray(array, n);
printf("Введите величину сдвига: ");
scanf("%d", &c);
rotateLeft(array, n, c);
printf("Массив после сдвига: ");
outputArray(array, n);
return 0;
}
Editor is loading...
Leave a Comment