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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.56
bvladsity
3 / 1 / 1
Регистрация: 24.05.2012
Сообщений: 39
#1

Все отрицательные цифры поместить в начало массива, а положительные в конец - C++

28.06.2012, 14:41. Просмотров 1328. Ответов 6
Метки нет (Все метки)

4. Дан массив положительных и отрицательных чисел. Переписать массив так, чтобы все отрицательные цифры были в начале массива, а положительные в конце. Сохранить относительный порядок цифр (Можно воспользоваться вспомогательным массивом).
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.06.2012, 14:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Все отрицательные цифры поместить в начало массива, а положительные в конец (C++):

Данный массив A (n). Все положительные его элементы поместить в начало массива B (n), а все отрицательные - в начало массива C (n). Подсчитать количес - C++
Данный массив A (n). Все положительные его элементы поместить в начало массива B (n), а все отрицательные - в начало массива C (n)....

Все положительные элементы массива поставить в начало, а отрицательные - в конец - C++
Помогите решить такую задачу пжл: дан одномерный массив "а" (состоящий из вещественных чисел). Необходимо пройдя по массиву один раз все...

Для каждого из массивов все отрицательные элементы переместить в начало массива, а все положительные — в конец - C++
Составить программу, которая превращает массивы А и В следующим образом: для каждого из них все отрицательные элементы одномерного...

Все положительные элементы поместить в начало массива В(n), а отрицательные элементы — в начало массива С(n) - C++
Ребята. Помогите с задачей пожалуйста. Дан массив А(n). Все положительные его элементы поместить в начало массива В(n), а...

Перестановить положительные элементы в начало массива, отрицательные — в конец - C++
Помогите написать задачи: 1. Перестановить положительные элементы в начало массива, отрицательные - в конец. 2. Найти элемент с...

Сортировка массива: перенести положительные числа в начало, а отрицательные - в конец массива - C++
Дан вещественный массив A(N). Отсортировать его таким образом, чтобы все положительные числа находились в начале, а отрицательные - в конце...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
28.06.2012, 14:48 #2
Как то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <conio.h>
#include <math.h> 
using namespace std; 
int main()
{
    int mass[]={3,5,-6,2,-4,6,4,-12};
    int mass1[8]={0};
    int j=0;
    for(int i=0;i<=7;i++)
     if (mass[i]<0) mass1[j++]=mass[i];
    for(int i=0;i<=7;i++)
     if (mass[i]>0) mass1[j++]=mass[i]; 
    for(int i=0;i<=7;i++) cout<<mass1[i]<<" ";
    getch();
    return 0;
}
1
bvladsity
3 / 1 / 1
Регистрация: 24.05.2012
Сообщений: 39
28.06.2012, 15:47  [ТС] #3
спасибо большое скажи а можно это сделать так чтоб пользователь с клавиатуры вводил эти числа
0
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
28.06.2012, 15:57 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Можно, количество элементов в массиве меняется в 4 строке
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <conio.h>
#include <math.h> 
#define N 20
using namespace std; 
int main()
{
    int mass[N]={0};
    int mass1[N]={0};
    int j=0;
     for(int i=0;i<=N-1;i++){
     cout<<"mass["<<i<<"]=";
     cin>>mass[i];
     }
    for(int i=0;i<=N-1;i++)
     if (mass[i]<0) mass1[j++]=mass[i];
    for(int i=0;i<=N-1;i++)
     if (mass[i]>0) mass1[j++]=mass[i]; 
    for(int i=0;i<=N-1;i++) cout<<mass1[i]<<" ";
    getch();
    return 0;
}
1
ЛетающийЕнот
88 / 67 / 12
Регистрация: 28.06.2012
Сообщений: 161
28.06.2012, 15:59 #5
bvladsity, конечно, можно.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <conio.h>
#include <math.h> 
using namespace std; 
int main()
{
    int size;
    cin >> size;
    int* mass=new int[size];
    for (int i=0; i<size; i++)
     cin>>mass[i];
    int* mass1=new int[size];
    int j=0;
    for(int i=0;i<size;i++)
     if (mass[i]<0) mass1[j++]=mass[i];
    for(int i=0;i<size;i++)
     if (mass[i]>0) mass1[j++]=mass[i]; 
    for(int i=0;i<size;i++) cout<<mass1[i]<<" ";
    getch();
    return 0;
}
Количество элементов вводится сначала, затем элементы массива. По-моему, так лучше.
1
Zuzik
237 / 222 / 38
Регистрация: 11.06.2012
Сообщений: 1,446
28.06.2012, 16:20 #6
я что то недогоняю но зачем тут
C++
1
#include <math.h>
?
0
Peperovich
43 / 43 / 4
Регистрация: 17.05.2011
Сообщений: 162
28.06.2012, 16:24 #7
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Не за чем, просто шаблон такой
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <conio.h>
#include <math.h> 
 
using namespace std; 
int main()
{
    
    getch();
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2012, 16:24
Привет! Вот еще темы с ответами:

Отсортировать элементы массива: отрицательные – в начало массива, положительные – в конец - C++
написать две проги...Желательно в Microsoft Visual Studio. Исходный массив инициализировать случайным образом, предусмотрев возможность...

Необходимо, пройдя по массиву один раз, все его положительные элементы поставить в начало а отрицательные в конец - C++
Помогите решить такую задачу пжл: дан одномерный массив &quot;а&quot; (состоящий из вещественных чисел). Необходимо пройдя по массиву один раз все...

Все отрицательные элементы массива перенести в начало, а все остальные - в конец - C++
помогите пожалуйста))) преобразовать массив по следующему правилу (воспользовавшись массивом у как вспомогательным):все отрицательные...

В одномерном массиве все отрицательные элементы переместить в начало массива, а остальные – в конец с сохранением порядка следования - C++
Здравствуйте форумчане! Подскажите, как решить данные задания. Отстаю от группы, а так и не разобрался в этой теме. Используя...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
28.06.2012, 16:24
Ответ Создать тему
Опции темы

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