Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Elikur
0 / 0 / 0
Регистрация: 27.05.2015
Сообщений: 44
1

Поменять местами элементы, стоящие на четных местах, с элементами, стоящими на нечетных

28.05.2015, 13:30. Просмотров 713. Ответов 10
Метки нет (Все метки)

Помогите составить программу.
Условие:
В заданном одномерном массиве поменять местами соседние
элементы, стоящие на четных местах, с элементами, стоящими
на нечетных местах
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2015, 13:30
Ответы с готовыми решениями:

Массивы: поменять местами соседние элементы, стоящие на четных местах, с элементами ,стоящими на нечетных местах
В заданном одномерном массиве поменять местами соседние элементы ,стоящие на...

В заданном одномерном массиве поменять местами соседние элементы, стоящие на четных местах, с элементами, стоящими на нечетных местах
1)В заданном одномерном массиве поменять местами соседние элементы, стоящие на...

Массив: поменять местами соседние элементы, стоящие на четных местах, с элементами, стоящими на нечетных
В заданном одномерном массиве, поменять местами соседние элементы, стоящие на...

Поменять местами соседние элементы массива, стоящие на четных местах, с элементами, стоящими на нечетных
Задача на массивы: В заданном одномерном массиве поменять местами соседние...

Поменять местами элементы массива, стоящие на чётных местах, с элементами, стоящими на нечетных
Реализовать два способа задания массивов: ввод значений с клавиатуры и...

10
rockstarone
13 / 13 / 9
Регистрация: 23.10.2014
Сообщений: 184
28.05.2015, 13:38 2
Elikur,
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
29
30
31
32
33
34
35
36
37
38
#include "stdafx.h"
#include <iostream>
#include <locale>
#include "stdlib.h"
#include <cstdlib>
#include <string>
#include "math.h"
using namespace std;
#pragma warning(disable: 4996)
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "rus");
    int *Arr = new int[10];
    int temp = 0;
    for (int i = 0; i < 10; i++)
    {
        Arr[i] = rand() % 30;
        cout << Arr[i] << " ";
    }
    cout << endl;
    for (int i = 0; i < 10; i++)
    {
        if (i % 2 == 0)
        {
            temp = Arr[i];
            Arr[i] = Arr[i + 1];
            Arr[i + 1] = temp;
        }
    }
    for (int i = 0; i < 10; i++)
    {
        cout << Arr[i] << " ";
    }
    cout << endl;
    system("pause");
    return 0;
}
0
Elikur
0 / 0 / 0
Регистрация: 27.05.2015
Сообщений: 44
28.05.2015, 14:20  [ТС] 3
Очень сложный код( Можно как-нибудь попроще? Я половины библиотек не знаю из этого кода.
0
Dimension
Dimension
573 / 443 / 221
Регистрация: 08.04.2014
Сообщений: 1,709
Завершенные тесты: 1
28.05.2015, 14:23 4
самый обычный код ,эти библиотеки на сложность кода не влияют
0
Elikur
0 / 0 / 0
Регистрация: 27.05.2015
Сообщений: 44
28.05.2015, 14:27  [ТС] 5
там парочка ошибок. Поможешь?
stdafx.h: No such file or directory.
`_TCHAR' has not been declared
ISO C++ forbids declaration of `argv' with no type
0
XZentus
201 / 199 / 65
Регистрация: 06.10.2013
Сообщений: 552
28.05.2015, 14:31 6
Сочетание сишных и с++ных библиотек радует, а это:
C++
1
2
#include "stdlib.h"
#include <cstdlib>
вообще отжиг!

Добавлено через 1 минуту
Цитата Сообщение от Elikur Посмотреть сообщение
stdafx.h: No such file or directory.
Убери строку 1.

Цитата Сообщение от Elikur Посмотреть сообщение
`_TCHAR' has not been declared
ISO C++ forbids declaration of `argv' with no type
замени на _TCHAR на char*

Добавлено через 1 минуту
Кстати, что за warning 4996?
А то я VS не пользуюсь, но узнать хочется...
0
idm
119 / 33 / 19
Регистрация: 19.03.2015
Сообщений: 90
28.05.2015, 14:33 7
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
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <time.h>
using namespace std;
const int N = 10;
 
 
void output(int *arr)
{
    for(int i(0);i<N;i++)
        cout << arr[i] << endl;
    cout << endl;
}
 
int main()
{
    srand(time(NULL));
    int arr[N],tmp;
 
    for(int i(0);i<N;i++)
        arr[i]=rand()%10;
 
    output(arr);
 
     for (int i(0); i < 10; i++)
    {
        if (i % 2 == 0)
        {
            tmp = arr[i];
            arr[i] = arr[i + 1];
            arr[i + 1] = tmp;
        }
    }
 
    output(arr);
 
    system("pause>>void");
    return 0;
}
1
Dimension
Dimension
573 / 443 / 221
Регистрация: 08.04.2014
Сообщений: 1,709
Завершенные тесты: 1
28.05.2015, 14:36 8
Цитата Сообщение от XZentus Посмотреть сообщение
что за warning 4996?
думаю это для scanf , ибо vs 13 требует писать scanf_s что бесит
0
ValeryS
Модератор
7266 / 5520 / 692
Регистрация: 14.02.2011
Сообщений: 18,705
28.05.2015, 14:38 9
Цитата Сообщение от rockstarone Посмотреть сообщение
C++
1
2
3
for (int i = 0; i < 10; i++)
    {
        if (i % 2 == 0)
тоже самое но меньше итераций и строк
C++
1
for (int i = 0; i < 10; i+=2)
2
idm
119 / 33 / 19
Регистрация: 19.03.2015
Сообщений: 90
28.05.2015, 14:40 10
Прикрутил комментарии
Кликните здесь для просмотра всего текста
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
29
30
31
32
33
34
35
#include <iostream> // Вывод на экран
#include <time.h> // Время для srand
using namespace std;
const int N = 10; // Размер массива
 
 
void output(int *arr)   // Функция вывода на экран, принимает указатель на массив
{                       // Очень плохо дублировать код вывода на экран поэтому функция
    for(int i(0);i<N;i++)
        cout << arr[i] << endl;
    cout << endl;
}
 
int main()
{
    srand(time(NULL)); // Стандартный синтаксис, команда для генерации rand на основе тек. времени
    int arr[N],tmp;    // Объявили массив и темп переменную
 
    for(int i(0);i<N;i++)
        arr[i]=rand()%10; // Заполняем массив ранд числами
 
    output(arr); // Выводим на экран
 
     for (int i(0); i < 10; i+=2) // Поправил по предложению ValeryS
    {
            tmp = arr[i]; // Меняем местами со след. элементом
            arr[i] = arr[i + 1];
            arr[i + 1] = tmp;
    }
 
    output(arr); // Выводим на экран
 
    system("pause>>void"); // пауза без вывода текста
    return 0;
}
0
rockstarone
13 / 13 / 9
Регистрация: 23.10.2014
Сообщений: 184
28.05.2015, 14:41 11
XZentus, я даже не смотрел на те библиотеки что подключены. Забыл их убрать.Гляда на код, не сложно догадаться что половина библиотек в нем не используется и их можно удалить. warning 4996 решает проблемы со scanf
0
28.05.2015, 14:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2015, 14:41

Поменять местами соседние элементы массива, стоящие на чётных местах, с элементами, стоящими на нечётных места
Пожалуйста помогите решить задачку... сессия через 2 дня((((( В заданном...

В одномерном массиве А(10) поменять местами элементы стоящие на четных и нечетных местах
В одномерном массиве А(10) поменять местами элементы стоящие на четных и...

Сортировка массива: отдельно элементы, стоящие на четных местах и элементы, стоящие на нечетных местах
здравствуйте! задание: В одномерном массиве, состоящем из п целых элементов....


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru