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

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

Войти
Регистрация
Восстановить пароль
 
Zzavett
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 14
#1

Разделить массив на две последовательности - C++

23.01.2014, 00:58. Просмотров 374. Ответов 5
Метки нет (Все метки)

Дан массив четного размера. Разделить его элементы на две последовательности, записав в первую все элементы с четными индексами, а во вторую – с нечетными
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2014, 00:58     Разделить массив на две последовательности
Посмотрите здесь:

Разделить массив на две половины так, чтобы сумма значений элементов были максимально близки C++
C++ Разделить массив на две части
C++ Разделить строку на две подстроки.
C++ Двузначное число разделить на две позиции в массиве
C++ Перемножить две последовательности чисел
Разделить строку на две части C++
Разделить функцию на две C++
Как разделить программу на две части? C++
Разделить массив на две части C++
Разделить число m на две части, разность которых равна 5 C++
Разделить строку на две части C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Бедел
232 / 28 / 4
Регистрация: 04.06.2010
Сообщений: 283
23.01.2014, 02:26     Разделить массив на две последовательности #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
int main()
{
    setlocale (LC_ALL, "Russian");
    int n;
    cout << "Введите размер массива: ";
    cin >> n;
    int mas[n];
    cout << "Введите массив: ";
    for (int i=0; i<n; i++)
        cin >> mas[i];
    for (int i=0; i<n; i+=2)
        cout << mas[i] << " ";
    cout << "\n";
    for (int i=1; i<n; i+=2)
        cout << mas[i] << " ";
    return 0;
}
Ev_Hyper
Заблокирован
23.01.2014, 02:30     Разделить массив на две последовательности #3
Бедел, нельзя так делать. n - не const.
Бедел
232 / 28 / 4
Регистрация: 04.06.2010
Сообщений: 283
23.01.2014, 02:55     Разделить массив на две последовательности #4
Ev_Hyper, уже второй раз сталкиваюсь с подобным Я использую gcc, и он вообще не ругается, когда я объявляю размер массива не как константу, а как обычную переменную.
Вот, гляньте.

Не по теме:

Не знаю почему, но ваш компилятор просил объявить переменные a и b как константы, а не просто как переменные типа int. Во втором варианте я объявил переменные как константы.
Вот и вся разница:

C++
1
int a=4, b=5;
C++
1
int const a=4, b=5;



Не по теме:

ValeryS:
потому что размеры массива должны быть известны на этапе компиляции
некоторые компиляторы, в частности GNU, позволяют вводить в качестве размера массива и обыкновенные переменные, но это не по стандарту



Не по теме:

ValeryS: ну если всегда пишешь на нем
то возможна конструкция

C++
1
2
cin>>a;
int b[a];



Добавлено через 16 секунд
Ev_Hyper, так как же мне быть в итоге ?)
Ev_Hyper
Заблокирован
23.01.2014, 02:59     Разделить массив на две последовательности #5
Бедел, я в этом не сильно рзбираюсь, но стандарт сделан не просто так. Каждый компилятор чудит по своему, но "код по стандарту" глотать должны все виды.
Бедел
232 / 28 / 4
Регистрация: 04.06.2010
Сообщений: 283
23.01.2014, 03:01     Разделить массив на две последовательности #6
Ev_Hyper, как альтернативу константе, мне предложили конструкцию
C++
1
2
cin >> n;
int mas[n];
Ей я и воспользовался..)
Можно тебя сюда ? Вставить копию первого элемента массива после наибольшего
Yandex
Объявления
23.01.2014, 03:01     Разделить массив на две последовательности
Ответ Создать тему
Опции темы

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