Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
mmejder
0 / 0 / 0
Регистрация: 29.05.2016
Сообщений: 11
#1

В однородном массиве все отрицательные элементы увеличить на 2, а все положительные заменить на 1

24.12.2016, 15:24. Просмотров 248. Ответов 4
Метки нет (Все метки)

помогите пожалуйста написать программу. В массиве все отрицательные элементы увеличить на 2, а все положительные заменить на 1

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2016, 15:24
Ответы с готовыми решениями:

В массиве заменить все отрицательные элементы на минимальный элемент, а все положительные – на максимальный
В массиве из 10 целых чисел заменить все отрицательные элементы на минимальный...

В массиве все отрицательные члены увеличить на 0,5, а все неотрицательные заменить на 0,1
Добрый вечер, я только недавно начал учиться в этой сфере,помогите, есть...

Заменить все отрицательные элементы массива на -1, а положительные на +1
Заменить все отрицательные элементы массива на -1, а положительные на +1 С++...

Умножить все отрицательные элементы массива на 100, а положительные заменить единицами
Создать одномерный массив из 10 случайных целых чисел из интервала от -12 до...

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

4
alexshem
0 / 0 / 0
Регистрация: 24.12.2016
Сообщений: 16
24.12.2016, 15:26 #2
Как задать массив, какое колл-во чисел в массиве, полное задание можно?
0
mmejder
0 / 0 / 0
Регистрация: 29.05.2016
Сообщений: 11
24.12.2016, 15:32  [ТС] #3
массив задается случайно
0
Fixer_84
836 / 646 / 646
Регистрация: 30.04.2016
Сообщений: 2,167
24.12.2016, 15:40 #4
mmejder, вот ваша программа.

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
#include <iostream>
#include <cstdlib>
#include <locale>
#include <climits>
 
using namespace std;
 
int main()
{
    srand((unsigned)time(NULL));
    int N;
    cout << "Введите размер массива:" << endl;
    cout << "N = ";
    cin >> N;
    int* A = new int[N];
    cout << "Случайный массив:" << endl;
    for (int i = 0; i < N; i++)
    {
        A[i] = -20 + (rand() % 41);
        cout << A[i] << " ";
    }
    cout << endl << "Искомый массив:" << endl;
    for (int i = 0; i < N; i++)
    {
        if (A[i] < 0)
            A[i] += 2;
        if (A[i] > 0)
            A[i] = 1;
        cout << A[i] << " ";
    }
    cout << endl;
    delete[] A;
    system("pause");
    return 0;
}
2
Peoples
1283 / 788 / 734
Регистрация: 06.02.2016
Сообщений: 2,127
Записей в блоге: 17
Завершенные тесты: 4
24.12.2016, 17:33 #5
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <vector>
#include <algorithm>
#include <iterator>
using namespace std;
int main() {
    srand(time(NULL));
    vector<int>v,v1;
    int n;
    cin>>n;
    for(int i=0; i!=n; i++) {
        v.push_back(rand()%20-10);
    }
    copy(v.begin(),v.end(),ostream_iterator<int>(cout," "));
    cout<<endl;
    transform(v.begin(),v.end(),back_inserter(v1),[](const int &x) {
        if (x<0) {
            return x+2;
        }
        if(x>0) {
            return 1;
        } else return x;
    });
    copy(v1.begin(),v1.end(),ostream_iterator<int>(cout," "));
    return 0;
}
Добавлено через 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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <vector>
#include <algorithm>
#include <iterator>
using namespace std;
int main() {
    srand(time(NULL));
    vector<int>v,v1;
    int n;
    cin>>n;
    for(int i=0; i!=n; i++) {
        v.push_back(rand()%20-10);
    }
    copy(v.cbegin(),v.cend(),ostream_iterator<int>(cout," "));
    cout<<endl;
    int x;
    replace_if(v.begin(),v.end(),[&x](const int &y) {
        if(y<0) {
            x=y+2;
            return true ;
        }
        if (y>0) {
            x=1;
            return true;
        }
    },x);
    copy(v.cbegin(),v.cend(),ostream_iterator<int>(cout," "));
    return 0;
}
0
24.12.2016, 17:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2016, 17:33

Получить новую матрицу, в которой все отрицательные элементы заменить на -1, положительные на +1 (Pascal->C++)
Двумерный целочисленный массив A(m,n) задается с экрана либо генерируется в...

Все отрицательные члены массива увеличить на 0,5, а все неотрицательные заменить на 0,1
Помогите разобраться, что делаю не так. Проблема с выводом измененного массива....

Разместить в массиве все положительные элементы в начале, отрицательные - в конце, посередине - нули
Всем доброго времени суток! Большая просьба помочь написать программу. Нужно...


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

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

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