Тема: Динамічні масиви, циклічний зсув
Дано одновимірний масив Х, розміром 15 елементів. Провести циклічний зсув елементів у масиві вправо на 2 позиції.
(зробити у вигляді динамічного масиву)
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C++ → Динамічні масиви, циклічний зсув
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Дано одновимірний масив Х, розміром 15 елементів. Провести циклічний зсув елементів у масиві вправо на 2 позиції.
(зробити у вигляді динамічного масиву)
#include <stdio.h>
#include <stdlib.h>
#define N 15
#define K 2
int main() {
int i, j;
int *items;
int *tmp_items;
items = (int *) malloc(sizeof(int) * N);
tmp_items = (int *) malloc(sizeof(int) * K);
srand(time(NULL));
for (i = 0; i < N; i++) {
items[i] = rand() % 100;
}
printf("Array:\n");
for (i = 0; i < N; i++) {
printf("%3d ", items[i]);
}
printf("\n");
for (i = 0; i < K; i++) {
tmp_items[i] = items[(N - 1) - i];
}
for (i = 0; i < N - K; i++) {
items[N - i - 1] = items[N - K - i - 1];
}
for (i = 0; i < K; i++) {
items[i] = tmp_items[K - i - 1];
}
printf("Result:\n");
for (i = 0; i < N; i++) {
printf("%3d ", items[i]);
}
printf("\n");
free(items);
free(tmp_items);
return 0;
}
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися