Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
1

перестановка четных элементов в массиве на место нечетных и наоборот

07.11.2013, 14:49. Просмотров 1478. Ответов 20
Метки нет (Все метки)

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

Определить каких элементов в массиве больше четных или нечетных
Ввести массив, состоящий из 20 элементов целого типа. Определить каких...

В целочисленном массиве найти максимальный элемент среди четных и среди нечетных элементов
В целочисленном массиве X(N) найти max1 - максимальный элемент среди четных...

Найти суммы четных элементов (элементов с четным номером) массива вещественных чисел A(22) и нечетных элементов
Здравствуйте, дорогие форумчане. Не могли бы вы мне помочь? Мне нужно составить...

Определить сумму указанных элементов, количество нечетных элементов и среднее арифметическое четных элементов массива
Дан двумерный массив целых чисел. Определить: 1. Сумму элементов массива,...

Найти сумму четных элементов, количество нечетных элементов и произведение элементов, кратным 3
Дан одномерный массив состоящий из 10 элементов а) найти сумму четных...

20
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
07.11.2013, 15:36 2
а какой смысл их менять в х чтобы потом полностью скопировать в у? что делать если в массиве не четное количество элементов разбираем с конца/начала
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
07.11.2013, 16:05  [ТС] 3
Цитата Сообщение от SergeyLappo Посмотреть сообщение
а какой смысл их менять в х чтобы потом полностью скопировать в у? что делать если в массиве не четное количество элементов разбираем с конца/начала
я беспонятия,если честно -такое задание дали..надо как то сделать и начать просматривать массив сначала..есть какие нибудь предположения?
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
07.11.2013, 16:33 4
да. короче берешь элемент первого массива, если его номер % 2 = 0 фигачишь его в у на его номер элемента +1 , else его номер элемента -1, учти нумерация с 0 го, код писать не буду. тут вроде все обьяснил при минимальном знании справиться можно при помощи цикла for, присваиваний и одного оператора if
1
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 17:40  [ТС] 5
Цитата Сообщение от SergeyLappo Посмотреть сообщение
да. короче берешь элемент первого массива, если его номер % 2 = 0 фигачишь его в у на его номер элемента +1 , else его номер элемента -1, учти нумерация с 0 го, код писать не буду. тут вроде все обьяснил при минимальном знании справиться можно при помощи цикла for, присваиваний и одного оператора if
Это получается что то типо такого???
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
#include <stdafx.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define ARR_SIZE 10
 
int main()
{
int arr[ARR_SIZE];
int i,c;
 
for(i=0;i<ARR_SIZE;i++)        
        scanf(" %d",&arr[i]);
 
for(i=0;i<ARR_SIZE;i++)
{
 if(i % 2==0)
 {
 c=arr[i];
 arr[i]=arr[i+1];
 arr[i+1]=c;
 }
 
    for(i=0;i<ARR_SIZE;i++)
 
 printf("%d \n",arr[i]);
}
 getch();
}
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 17:46 6
Yulia_sko.kz, я один второго массива не вижу?

Добавлено через 3 минуты
Yulia_sko.kz, но местами поменять - поменял.. только поставь проверку чтобы не выходило за пределы если нечетное количество + присвой все это второму массиву и все будет норм...
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 17:48  [ТС] 7
Цитата Сообщение от SergeyLappo Посмотреть сообщение
Yulia_sko.kz, я один второго массива не вижу?

Добавлено через 3 минуты
Yulia_sko.kz, но местами поменять - поменял.. только поставь проверку чтобы не выходило за пределы если нечетное количество + присвой все это второму массиву и все будет норм...
несовсем поняла как это?можешь на коде показать пожалуйста?
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 17:50 8
Yulia_sko.kz, что конкретно? выполняй пока номер элемента +1 <= количества элементов.вот и все. А как одно другому присвоить - наверное понятно.
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 17:58  [ТС] 9
Цитата Сообщение от SergeyLappo Посмотреть сообщение
Yulia_sko.kz, что конкретно? выполняй пока номер элемента +1 <= количества элементов.вот и все. А как одно другому присвоить - наверное понятно.
как раз и непонятно как одно другому присвоить
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 18:04 10
Yulia_sko.kz, так же фором берешь элемент arr[i]=arr1[i] (arr1 второй массив)
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 18:33  [ТС] 11
Цитата Сообщение от SergeyLappo Посмотреть сообщение
Yulia_sko.kz, так же фором берешь элемент arr[i]=arr1[i] (arr1 второй массив)
так не так?
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 <stdafx.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define ARR_SIZE 10
 
int main()
{
int arr[ARR_SIZE];
int i,c;
 
for(i=0;i<ARR_SIZE;i++)        
        scanf(" %d",&arr[i]);
 
for(i=0;i<ARR_SIZE;i++)
{
 if(i % 2==0)
 {
 c=arr[i];
 arr[i]=arr[i+1];
 arr[i+1]=c;
 }
 
    for(i=0;i<ARR_SIZE;i++)
 
 printf("%d \n",arr[i]);
}
for(i+1<=i;i<ARR_SIZE;i++){
if(i % 2==0)
 {
arr[i]=arr1[i]
}
 getch();
}
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 18:38 12
Цитата Сообщение от Yulia_sko.kz Посмотреть сообщение
так не так?
Цитата Сообщение от Yulia_sko.kz Посмотреть сообщение
int arr[ARR_SIZE];
второй то тоже надо создать. Ты что без компилятора чтоли пишешь??? как так можно???
Цитата Сообщение от Yulia_sko.kz Посмотреть сообщение
for(i+1<=i;i<ARR_SIZE;i++){
if(i % 2==0)
*{
arr[i]=arr1[i]
}
не то. Ты зачем-то все еще раз переиначиваешь уж там все обработала так и забей.
for(i+1<=i;i<ARR_SIZE;i++){
arr[i]=arr1[i]
}как-то так навскидку с телефона
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 18:59  [ТС] 13
Цитата Сообщение от SergeyLappo Посмотреть сообщение
второй то тоже надо создать. Ты что без компилятора чтоли пишешь??? как так можно???
не то. Ты зачем-то все еще раз переиначиваешь уж там все обработала так и забей.
for(i+1<=i;i<ARR_SIZE;i++){
arr[i]=arr1[i]
}как-то так навскидку с телефона
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
39
40
41
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define ARR_SIZE 10
 
int main()
{
int arr[10];
int i,c;
 
for(i=0;i<10;i++)
        scanf(" %d",&arr[i]);
 
for(i=0;i<10;i++)
{
 if(i % 2==0)
 {
 c=arr[i];
 arr[i]=arr[i+1];
 arr[i+1]=c;
 }
 
    for(i=0;i<10;i++)
 
 printf("%d \n",arr[i]);
}
int arr[10];
int arr1;
 
for(i+1<=i;i<10;i++){
 if(i % 2==0)
 {
 arr[i]=arr1[i]
 }
for(i+1<=i;i<10;i++){
 arr[i]=arr1[i]
 }
 getch();
}
вот что то такое натворила -хотя компилятор 7 ошибок выдал скобки и еще кое что касающееся arr
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 19:07 14
Yulia_sko.kz, так исправляй то что он пишет...ну или кидай сюда как минимум какие конкретно ошибки .. так разговор ниочем..
int arr[10]
создай arr1 !!!!!!!
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 19:41  [ТС] 15
Цитата Сообщение от SergeyLappo Посмотреть сообщение
Yulia_sko.kz, так исправляй то что он пишет...ну или кидай сюда как минимум какие конкретно ошибки .. так разговор ниочем..
int arr[10]
создай arr1 !!!!!!!
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
39
40
41
42
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define ARR_SIZE 10
 
int main()
{
int arr[10];
int i,c;
 
for(i=0;i<10;i++)
        scanf(" %d",&arr[i]);
 
for(i=0;i<10;i++)
{
 if(i % 2==0)
 {
 c=arr[i];
 arr[i]=arr[i+1];
 arr[i+1]=c;
 }
 
    for(i=0;i<10;i++)
 
 printf("%d \n",arr[i]);
}
int arr1[10];
int arr1;
 
for(i+1<=i;i<10;i++){
 if(i % 2==0)
 {
 arr[i]=arr1[i];
 }
for(i+1<=i;i<10;i++){
 arr[i]=arr1[i];
 }
 }
 getch();
}
вот что то исправила теперь 4 ошибки......

1-E2062 Invalid indirection
2-E2062 Invalid indirection
3-E2344 Earlier declaration of 'arr1'
4-E2238 Multiple declaration for 'arr1'
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 19:51 16
Цитата Сообщение от Yulia_sko.kz Посмотреть сообщение
int arr1[10];
int arr1;
второй убери два раза создаешь
а строки он не пишет чтоли какие?
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 20:00  [ТС] 17
Цитата Сообщение от SergeyLappo Посмотреть сообщение
второй убери два раза создаешь
а строки он не пишет чтоли какие?
второй убрала, скомпилировался, 1 строку ввела цифры -массив х, а в массиве у он только начало поменял остальное нет и столбиком выдал вообще...
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 20:25 18
Yulia_sko.kz, а чем ты хотела если ты выводишь \n каждый раз
и до какой степени начало?
0
Yulia_sko.kz
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 123
13.11.2013, 20:30  [ТС] 19
Цитата Сообщение от SergeyLappo Посмотреть сообщение
Yulia_sko.kz, а чем ты хотела если ты выводишь \n каждый раз
и до какой степени начало?
всмысле до какой степени начало??? и что мне с этим столбиком делать или \n?
0
SergeyLappo
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 20
13.11.2013, 21:18 20
Yulia_sko.kz, а) чем не устраивает столбик Б) если не устраивает убрать \n
Цитата Сообщение от Yulia_sko.kz Посмотреть сообщение
printf("%d \n",arr[i]);
0
13.11.2013, 21:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2013, 21:18

Найти количество и сумму четных и нечетных чисел в массиве
Дан массив чисел В. Найти кол-во и сумму четных чисел в массиве и кол-во и...

Числа. Подсчитать количество четных и нечетных чисел- разрядов. Найти суммы только всех четных и только нечетных, проверить какая из сумм больше
Добрый день, не могу понять как же составить программу для этой задачи без...

В рендомно заполненном массиве поменять местами значения четных и нечетных индексов
В массиве из 12 ячеек заполненный рендомно, поменять местами значения четных и...


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

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

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