0 / 0 / 0
Регистрация: 12.05.2019
Сообщений: 49
1

Сформировать массив Y, в который поместить сначала все четные, а затем все нечетные элементы массива Х

28.05.2019, 14:11. Показов 3524. Ответов 1

Студворк — интернет-сервис помощи студентам
Пользователь вводит размер n динамического массива Х, а затем заполняет его целыми числами. Сформировать новый массив Y, в который поместить сначала все четные,а затем все нечетные элементы массива Х. Получившейся массив Y вывести в файл.
Мой код: (при вводе n=3; x[i]={1,6,5} выводит 1 5 6 6 5 1. Должен вывести 6 5 1 или 6 1 5)
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include <bits/stdc++.h>
using namespace std;
int main() 
{
    ofstream f_output;
    setlocale(LC_ALL, "rus");
    int N;
    cin>>N;
    int *arr=new int[N];
    for (int i=0;i<N;i++) 
    {
        cin>>arr[i];
    }
    int count=1;
    int p=N;
    int t=0;
    int count2=1;
    for (p=N,t=0;p>0,t<N;) 
    {
        if (count%2!=0) 
        {
            t++;
            count2++;
        }
        else 
        {
            p--;
            count2++;
        }
        count++;
    }
    count=1;
    p=N;
    t=0;
    int*arr2=new int[count2];
    for (int i=0,p=N-1,t=0;p>=0,t<=N;i++) 
    {
        if (count%2!=0) 
        {
            
            arr2[i]=arr[t];
            t++;
        }
        else 
        {
            arr2[i]=arr[p];
            p--;   
        }
        count++;  
    }
    f_output.open("vivod.txt");
    for (int i=0;i<count2;i++) 
    {
        f_output<<arr2[i]<<" ";
    }
    delete[]arr;
    delete[]arr2;
 
    //_getch();
    f_output.close();
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2019, 14:11
Ответы с готовыми решениями:

Вывести сначала все нечетные элементы массива, а затем - четные
Дан целочисленный массив размера N. Вывести вначале все его нечетные элементы, а затем — четные.

Вывести сначала все четные элементы массива, затем - нечетные
Дан массив а из n чисел.Требуется сначала вывести все четные элементы, затем — нечетные. помогите...

Двумерный массив. Сформировать из элементов массива одномерный массив, в который поместить все нечетные элементы, которые делятся на 3
Дан двумерный массив А с размерностью NxN, элементы массива - случайные целые числа из диапазона...

Получить новый, в котором сначала расположены все четные, а затем нечетные элементы массива
Дан целочисленный массив x1, x2, ... xn . Получить новый, в котором сначала расположены все четные,...

1
7430 / 5022 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
28.05.2019, 17:38 2
Лучший ответ Сообщение было отмечено z0r как решение

Решение

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
#include <iostream>
using namespace std;
 
int main() 
{
    int n, k=0;
    cout << "n="; cin >> n;
    
    int *X=new int[n];
    int *Y=new int[n];
    
    cout << "Enter " << n << " integer elements:\n";
    for (int i = 0; i < n; i++) 
    {
    cin >> X[i];
    if (X[i]%2==0) Y[k++]=X[i];
    }
    cout << "\n";
    
    for (int i = 0; i < n; i++) 
    {
    if (X[i]%2!=0) Y[k++]=X[i];
    cout << Y[i] << " ";
    }
    
    delete[]X;
    delete[]Y;
 
system("pause");
return 0;
}
0
28.05.2019, 17:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2019, 17:38
Помогаю со студенческими работами здесь

Переписать все числа во второй массив так, чтобы сначала шли четные элементы, затем нули, потом нечетные элементы
Парни, нуждаюсь в ваших советах. Из одномерного целочисленного массива переписать все числа во...

Сформировать массив L из массивов A и B путем их слияния так, чтобы сначала располагались все элементы массива A, а затем все элементы массива B.
Задан массив A из N элементов и массив B из M элементов. Сформировать массив L из массивов A и B...

Сформировать второй массив, в котором сначала идут все элементы первого массива, кратные 5, а затем все остальные
1 / Дан одномерный массив из 30 элементов. Сформировать второй массив, в котором сначала идут все...

Сформировать и вывести на экран новый массив, который будет содержать вначале все элементы массива A(0), затем все элементы массива B(4)
Здравствуйте! Помогите написать парочку программ... 3. Даны массивы A(0) и B(4). Сформировать...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru