6 / 6 / 2
Регистрация: 08.04.2014
Сообщений: 248

Массив: сначала расположить единицы, а потом другие элементы

05.01.2015, 00:30. Показов 952. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Преобразовать массив таким образом чтобы сначала располагались все элементы равные 1, а потом остальные..
Пытался сделать,не вышло.
C++
1
2
3
4
5
6
7
8
9
10
11
12
int b[u]={3,1,2,4};
    for(i=0;i<u;i++){
    if(b[i]==1){
    c=i;
        z=b[i];
    b[i]=b[c];
    b[c]=z;
    }}
    cout<<"c="<<c<<endl;
    for(i=0;i<u;i++){
    cout<<b[i]<<' '; 
    }cout<<endl;
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.01.2015, 00:30
Ответы с готовыми решениями:

Преобразовать массив: сначала расположить все элементы, целая часть которых не превышает 1, потом - остальные
Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом — все...

Преобразовать массив: сначала расположить все отрицательные элементы, а потом - все положительные
ЧЕРЕЗ ФУНКЦИЮ! Преобразовать одномерный целочисленный массив таким образом, чтобы сначала располагались все отрицательные элементы, а...

Сортировка массива: сначала расположить положительные, а потом - отрицательные элементы
Проверьте пожайлуста мое решение :) . Эффективен ли вообще такой подход? Задание: Преобразовать массив , так чтобы сначала...

15
Dimension
595 / 463 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
05.01.2015, 00:37
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    int a[n];
    
    int e = 0;
    For(i, n){
        cin >> a[i];
        if (a[i] == 1)
        {
            swap(a[i], a[e]);
            e++;
        }
    }
    For(i, n){
        cout << a[i] << " ";
    }
1
6 / 6 / 2
Регистрация: 08.04.2014
Сообщений: 248
05.01.2015, 00:56  [ТС]
не работает

Добавлено через 2 минуты
заработало,спасибо
0
6 / 6 / 2
Регистрация: 08.04.2014
Сообщений: 248
05.01.2015, 00:58  [ТС]
забыл про инкремент((
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
05.01.2015, 00:59
Dimension,
у самого то скомпилилось?
две функции с одним и тем же именем
и кстати где они вызываются?
или ты так цикл обозначил?
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
05.01.2015, 01:00
Dimension, чуток подправил
C++
1
2
3
4
5
6
7
8
9
10
11
    for(i=0; i<n;i++){
        cin >> a[i];
        if (a[i] == 1)
        {
            a[i] = a[e];
            a[e++] = 1; 
        }
    }
    for(i=0, i<n; i++){
        cout << a[i] << " ";
    }
1
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
05.01.2015, 01:01
Цитата Сообщение от Байт Посмотреть сообщение
for(i, n)
это что новый цикл появился???
0
6 / 6 / 2
Регистрация: 08.04.2014
Сообщений: 248
05.01.2015, 01:01  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
const int u=4;
    int c=0;int z;
    int b[u]={3,1,1,4};
    for(i=0;i<u;i++){
    if(b[i]==1){
    z=b[i];
    b[i]=b[c];
    b[c]=z;
    c++;
    }}
    for(i=0;i<u;i++){
cout<<b[i]<<' '; 
    }cout<<endl;
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
05.01.2015, 01:02
Цитата Сообщение от Dimension Посмотреть сообщение
For(i, n)
Это Си++, однако.
0
Dimension
595 / 463 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
05.01.2015, 01:04
ребят вы чего
For(i,n) это типа for(int i=0;i<n;i++)
ничего не нужно подправлять
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int a[n];
    
    int e = 0;
    for(int i=0;i<n;i++){
        cin >> a[i];
        if (a[i] == 1)
        {
            swap(a[i], a[e]);
            e++;
        }
    }
    for(int i=0;i<n;i++){
        cout << a[i] << " ";
    }
Добавлено через 52 секунды
извиняюсь конечно за не понятки)
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
05.01.2015, 01:05
Цитата Сообщение от Байт Посмотреть сообщение
Это Си++, однако.
а ты уже подправил свое сообщение
а я сижу гадаю, может чего пропустил

Добавлено через 56 секунд
Цитата Сообщение от Dimension Посмотреть сообщение
For(i,n) это типа for(int i=0;i<n;i++)
никогда не видал
откуда такое чудо, ссылку можно
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
05.01.2015, 01:06
Цитата Сообщение от ValeryS Посмотреть сообщение
это что новый цикл появился???
Прошу прощения. Успел исправить. А пропустил, потому что сам использую похожую конструкция, правда на законных основаниях. Вот такие макрос ы придумал
C++
1
2
#define afc(i,n) for(i=0; i<n; i++)
#define afi(i,n) for(int i=0; i<n; i++)
и горя не знаю, и писанины (следовательно, и ошибок) меньше
1
Dimension
595 / 463 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
05.01.2015, 01:07
да у меня просто дефайном так ,забыл исправить ,думал и так поймет ,сорри
1
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
05.01.2015, 01:08
Цитата Сообщение от ValeryS Посмотреть сообщение
откуда такое чудо, ссылку можно
вас обманывают ^_^
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
05.01.2015, 01:12
Цитата Сообщение от Байт Посмотреть сообщение
Вот такие макрос ы придумал
Цитата Сообщение от Dimension Посмотреть сообщение
да у меня просто дефайном так
понятненько
но непосвященному,(мне) уж очень похоже на объявление функции в стиле Си, там по умолчанию инты вставляются
уж предупреждайте в следующий раз
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
05.01.2015, 01:12
Цитата Сообщение от Dimension Посмотреть сообщение
да у меня просто дефайном так
Ну так откуда нам знать твои дефайны? Если уж используешь, так выкладывай код вместе с дефайнами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.01.2015, 01:12
Помогаю со студенческими работами здесь

В массиве сначала расположить все положительные элементы,а потом отрицательные
1.В одномерному массиве,что состоит из N целых элементов вычислить: 1)добавление элементов массиву с парными номерами; 2)сумму...

Сначала расположить все элементы, отличающиеся от максимального не более чем на 20%, потом — остальные
В общем, вот задание: В одномерном массиве, состоящем из N вещественных элементов, вычислить: 1) количество элементов массива, меньших...

Расположить в массиве сначала все отрицательные элементы и нули, потом - положительные (Pascal -> C++)
Помогите пожалуйста, нужно перевести программу с pascal на С++. Есть два вида кода: const n=10; var a,b:array of integer; ...

Преобразовать массив: сначала расположить все элементы, модуль которых не превышает 4, а потом все остальные
В одномерном массиве, состоящем из 15 вещественных элементов (значения элементов массива задайте случайными числами из интервала ),...

Расположить элементы массива так, чтобы сначала были 0, а потом 1
Дан массив из 0 и 1, расположить элементы так, чтобы сначала были 0, а потом 1(методы сортивровки не использовать)


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

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

Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru