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

Поменять местами первую и вторую половины массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Spiker238
0 / 0 / 0
Регистрация: 16.11.2010
Сообщений: 10
20.12.2010, 13:51     Поменять местами первую и вторую половины массива #1
Дан массив а, состоящий из 10 элементов. Поменять местами первую и вторую его половины
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2010, 13:51     Поменять местами первую и вторую половины массива
Посмотрите здесь:

C++ Поменять местами первую и вторую половину массива.
Столбцы левой половины массива поменять местами со столбцами правой половины C++
C++ дано слово из чётного количества букв.поменять местами первую и вторую букву третью и четвёртую букву и тд.
Поменять местами две половины очереди без использования дополнительной памяти C++
Доделать и исправить. Дано слово из 12 букв. Поменять местами его трети: первую треть разместить на месте третьей, вторую на месте первой и 3 на 2 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kenwood2010
48 / 59 / 7
Регистрация: 26.11.2010
Сообщений: 192
20.12.2010, 14:09     Поменять местами первую и вторую половины массива #2
ожидай в работе...

Добавлено через 11 минут
Цитата Сообщение от Kenwood2010 Посмотреть сообщение
ожидай в работе...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream.h>
#include <conio.h>
 
 
int main()
{
int a[10] = {1,2,3,4,5,6,7,8,9,10};
int rez[10];
int k=5;
 
for(int i = 0; i < 10; i++) {rez[i]=0;}
for(int i = 0; i < 5; i++)
 {
  rez[k++] = a[i];
 }
k=0;
for(int i = 5; i < 10; i++)
 {
  rez[k++] = a[i];
 }
 
 for(int i = 0; i < 10; i++)
 {
 cout<<rez[i]<<" ";
 }
getch();
        return 0;
}
Добавлено через 1 минуту
Цитата Сообщение от Дмитpий Посмотреть сообщение
01...
в посте №2 программа ищет заданное число в массиве!
сюда она отнощения не имеет!
Reee
 Аватар для Reee
21 / 21 / 1
Регистрация: 21.09.2010
Сообщений: 65
20.12.2010, 14:10     Поменять местами первую и вторую половины массива #3
Что мудрить?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <iomanip>
#define N 10
int main()
{
    int A[N]={1,2,3,4,5,6,7,8,9,10};
    int a;
    
    for(int i=0; i<5; i++)
    {
        a=A[i];
        A[i]=A[i+5];
        A[i+5]=a;
    }
     for(int i=0; i<N; i++)
         std::cout<<std::setw(3)<<A[i];
     std::cout<<std::endl;
}
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
20.12.2010, 17:27     Поменять местами первую и вторую половины массива #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define SIZE 10
 
int main(void){
    int arr[SIZE] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, i, * tmp;
    printf("\nBefore: ");
    for ( i = 0; i < SIZE; ++i )
        printf("%d ", arr[i]);
    if ( ( tmp = (int*)malloc(sizeof(int) * SIZE / 2) ) == NULL ){
        perror("malloc");
        exit(1);
    }
    memcpy(tmp, arr, sizeof(int) * SIZE / 2);
    memmove(arr, arr + SIZE / 2, sizeof(int) * SIZE / 2);
    memcpy(arr + SIZE / 2, tmp, sizeof(int) * SIZE / 2);
    free(tmp);
    printf("\nAfter:  ");
    for ( i = 0; i < SIZE; ++i )
        printf("%d ", arr[i]);
    printf("\n");
 
    system("pause");
    exit(0);
}
Yandex
Объявления
20.12.2010, 17:27     Поменять местами первую и вторую половины массива
Ответ Создать тему
Опции темы

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