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

Сформировать новый массив - C++

Восстановить пароль Регистрация
 
BooL_BooL
0 / 0 / 0
Регистрация: 26.01.2014
Сообщений: 3
26.01.2014, 15:05     Сформировать новый массив #1
Дан массив a1, ... , a20.
Сформировать новый массив b1, ... , b20 , у которого вначале следуют все положительные элементы массива А, затем все отрицательные.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KOPOJI
Модератор
 Аватар для KOPOJI
16242 / 6453 / 390
Регистрация: 12.06.2012
Сообщений: 19,347
26.01.2014, 15:16     Сформировать новый массив #2
Тоже самое на си (только там до 10 элементов, а не 20). Заменить функции на плюсовые - и вуаля. Создать массив В, в который переписать по порядку сначала все положительные, а потом все отрицательные элементы
BooL_BooL
0 / 0 / 0
Регистрация: 26.01.2014
Сообщений: 3
26.01.2014, 15:28  [ТС]     Сформировать новый массив #3
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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
void ArraySort (double* arrayIn, double* arrayOut, int arraySize);
 
int main()
{
    const int ARRAY_SIZE = 20;
    double a[ARRAY_SIZE];
    cout << " Zapolnite massiv a[] chislami:" << endl;
    for (int i=0; i<ARRAY_SIZE; i++) {
        cout << "    a[" << i+1 << "] = ";
        cin >> a[i];
    }
 
    double b[ARRAY_SIZE]={0};
   
    cout << " Formiruem noviy massiv:" << endl;
    int outCounter=0;
    for (int i=0; i<ARRAY_SIZE; i++) 
        if (a[i]>0){
b[outCounter]=a[i];outCounter++;
        }
        for (int i=0; i<ARRAY_SIZE; i++)
        if (a[i]<0){
b[outCounter]=a[i];outCounter++;
        }
        if (outCounter>0)
        {
         cout << " Formiruem noviy massiv:" << endl;
        for (int i=0; i<outCounter; i++)
       
 
        
         cout << " b[" << i+1 << "] = " << b[i] << endl;
    
        }
        else  cout << "  noviy massiv ne sformirovan:" << endl;
    system("pause");
    return 0;
}
Добавлено через 50 секунд
Я просто не понимаю как сделать Блок схему
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
26.01.2014, 15:35     Сформировать новый массив #4
По ссылке речь идёт о расположению элементов по порядку, здесь же о порядке вообще ничего не сказано, следовательно задачу можно решить за один проход: положительные копируются в начало, отрицательные в конец.
Yandex
Объявления
26.01.2014, 15:35     Сформировать новый массив
Ответ Создать тему
Опции темы

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