Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
BOR1K
14 / 14 / 4
Регистрация: 19.09.2009
Сообщений: 289
#1

Массив перестановка. - C++

18.12.2009, 14:11. Просмотров 399. Ответов 4
Метки нет (Все метки)

Переставить первые три и последние три элементы местами, сохраняя их следование.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2009, 14:11     Массив перестановка.
Посмотрите здесь:

C++ Перестановка
C++ перестановка
Перестановка чисел C++
C++ Дан целочисленный массив a(n,m). Упорядочить по неубыванию элементы на главной диагонали и диагоналях, параллельных ей. Перестановка элементов допуска
Перестановка слов C++
Перестановка чисел C++
Массив (добавление, перестановка, поиск) C++
C++ Перестановка в матрице
Перестановка рангов C++
Перестановка битов C++
перестановка массивов с++ C++
C++ Перестановка с повторениями

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт С++
9412 / 5435 / 917
Регистрация: 25.07.2009
Сообщений: 10,428
18.12.2009, 14:39     Массив перестановка. #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <string.h>
 
int main(void){
    int arr[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    int tmp[3];
    size_t i;
    
    printf("Original:");
    for ( i = 0; i < 10; ++i )
        printf(" %d", arr[i]);
    printf("\n");
    memcpy(tmp, arr, 3 * sizeof(*arr));
    memcpy(arr, arr + ( sizeof(arr) / sizeof(*arr) ) - 3, 3 * sizeof(*arr));
    memcpy(arr + ( sizeof(arr) / sizeof(*arr) ) - 3, tmp, 3 * sizeof(*arr));
    printf("Changed:");
    for ( i = 0; i < 10; ++i )
        printf(" %d", arr[i]);
    printf("\n");
    
    return 0;
}
BOR1K
14 / 14 / 4
Регистрация: 19.09.2009
Сообщений: 289
18.12.2009, 14:44  [ТС]     Массив перестановка. #3
ну через 2 массива и я могу)) но все равно спасибо, я уже сам решил, взял массив n+3
easybudda
Эксперт С++
9412 / 5435 / 917
Регистрация: 25.07.2009
Сообщений: 10,428
18.12.2009, 14:59     Массив перестановка. #4
Цитата Сообщение от BOR1K Посмотреть сообщение
ну через 2 массива и я могу
Так без них ещё проще
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
 
int main(void){
    int arr[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    int tmp;
    size_t i, j;
    
    printf("Original:");
    for ( i = 0; i < 10; ++i )
        printf(" %d", arr[i]);
    printf("\n");
    for ( i = 0, j = ( sizeof(arr) / sizeof(*arr) ) - 3; i < 3; ++i, ++j ){
        tmp = arr[i];
        arr[i] = arr[j];
        arr[j] = tmp;
    }
    printf("Changed:");
    for ( i = 0; i < 10; ++i )
        printf(" %d", arr[i]);
    printf("\n");
    
    return 0;
}
BOR1K
14 / 14 / 4
Регистрация: 19.09.2009
Сообщений: 289
18.12.2009, 15:56  [ТС]     Массив перестановка. #5
молодес)
Yandex
Объявления
18.12.2009, 15:56     Массив перестановка.
Ответ Создать тему
Опции темы

Текущее время: 19:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru