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

Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
jenya5455
1 / 1 / 0
Регистрация: 07.11.2012
Сообщений: 53
11.02.2013, 10:16     Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию #1
Прив. всем. Немного не могу правильно составить программу по сортировке массива - задача такая : Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию

Код

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 <iostream>
using namespace std;
 
int main (){
    const int n=4;
    int f[n];
    int g[n];
    int i,l;
    for (i=0;i<n;i++){
    cin >> f[i];
    for (int j = i+1; j < l; j++){
    
    if (f[i]<f[j]){
      int  foo = f[i];
       f[i]=f[j];
       f[j]=foo;}            
    }}
      l=0;
      for (int p=0; p<n; p++){
        if (f[p]<0){
        g[l]=f[p];
        l++;
              
      }}
        for (int h=0;h<l;h++){
        cout <<"g[" << g[h]<<"] " <<endl;
        }
        system ("pause");
        return 0;
    }

просто без коментарий)) устал и так и так, не как не могу всё в одно сложить. смысл понел, а вот циклы расставить не судьба походу. PLZ. циклы роставьте норм а... )))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2013, 10:16     Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию
Посмотрите здесь:

Дан массив. Переписать его второй, четвертый и т.д. элементы в другой массив такого же размера, расположив элементы подряд с начала массива C++
Как перенести все отрицательные элементы из одного массива в другой. C++
C++ Переписать элементы с массива с одного в другой
Процедура и функция: Создать другой массив, содержащий отрицательные элементы исходного массива. C++
C++ Переписать в массив Y положительные элементы а в массив Z отрицательные элементы массива Х N<=40
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,337
Завершенные тесты: 1
11.02.2013, 10:46     Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию #2
Цитата Сообщение от jenya5455 Посмотреть сообщение
Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию
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
#include <iostream>
using namespace std;
 
int main (){
const int n=4;
int f[n];
int g[n];
int i,temp=0;
 
for(i=0;i<n;i++){ // Заполнение массива
  cin >> f[i];
  g[i]=0;
}
 
for(int i=0; i<n; i++){ // Перенос отрицательных элементов
  if(f[i]<0){
    g[i]=f[i];}
}
 
for(int i=0; i<n; i++) // Сортировка
  for( int j=0; j<n; j++){
    if (g[i]<g[j]){
    temp=g[i];
    g[i]=g[j];
    g[j]=temp;;
  }
}
 
for(int i=0;i<n;i++){ // Вывод на экран
  if(g[i]!=0)
  cout <<"g[" << g[i]<<"] " <<endl;
}
 
system ("pause");
return 0;
}
jenya5455
1 / 1 / 0
Регистрация: 07.11.2012
Сообщений: 53
11.02.2013, 16:15  [ТС]     Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию #3
Ну вот спасибо большое.
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
11.02.2013, 16:52     Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию #4
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
#include <algorithm>
#include <iostream>
#include <iterator>
#include <vector>
#include <random>
#include <ctime>
 
int main ()
{
    auto rnd = std::bind(std::uniform_int_distribution <> (-20, 20),
                         std::mt19937 (time(nullptr)));
    int vectSize = 15;
    std::vector <int> fVect (vectSize);
    std::cout << "First vector: " << std::endl;
    std::generate(fVect.begin(), fVect.end(), rnd);
    std::copy(fVect.begin(), fVect.end(), std::ostream_iterator <int> (std::cout, " "));
 
    std::vector <int> sVect;
    for (auto currNum: fVect)
        if (currNum < 0)
            sVect.push_back(currNum);
    std::sort(sVect.begin(), sVect.end());
    std::cout << "\nSecond vector: " << std::endl;
    std::copy(sVect.begin(), sVect.end(), std::ostream_iterator <int> (std::cout, " "));
 
    return 0;
}
Добавлено через 2 минуты
Цитата Сообщение от SatanaXIII Посмотреть сообщение
C++
1
int i,temp=0;
Цитата Сообщение от SatanaXIII Посмотреть сообщение
C++
1
for(int i=0; i<n; i++)
Цитата Сообщение от SatanaXIII Посмотреть сообщение
C++
1
for(int i=0; i<n; i++)
Цитата Сообщение от SatanaXIII Посмотреть сообщение
C++
1
for(int i=0;i<n;i++)
к чему тогда int i в начале?
Yandex
Объявления
11.02.2013, 16:52     Из одного массива переписать отрицательные элементы в другой массив и упорядочить их по возрастанию
Ответ Создать тему
Опции темы

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