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

Заменить в массиве все отрицательные элементы на их модули - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
НикНик
0 / 0 / 0
Регистрация: 26.06.2012
Сообщений: 14
26.06.2012, 23:21     Заменить в массиве все отрицательные элементы на их модули #1
Создать массив из 12 случайных целых чисел из отрезка [-3;3]. Вывести массив на экран. Заменить в массиве все отрицательные элементы на их модули. Повторно вывести изменившийся массив на экран на отдельной строке.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2012, 23:21     Заменить в массиве все отрицательные элементы на их модули
Посмотрите здесь:

Заменить отрицательные элементы на их модули, если сумма их цифр больше К C++
C++ Заменить в массиве все отрицательные элементы средним арифметическим значением всех положительных, вывести оба массива
C++ С++ заменить в массиве отрицательные элементы их модулем
Все отрицательные элементы массива уменьшить в двое, а все нулевые элементы заменить на... C++
C++ Заменить в одномерном числовом массиве отрицательные элементы их квадратами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
 Аватар для Andrey.K
338 / 259 / 15
Регистрация: 14.11.2010
Сообщений: 480
27.06.2012, 00:08     Заменить в массиве все отрицательные элементы на их модули #2
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 <iostream>
#include <conio.h>
#include <ctime>
#include <cstdlib>
#include <cmath>
using namespace std;
const int n=12;
int main()
{
    setlocale(0,"Rus");
    int* mas=new int[n];
    int min=-3,max=3;
    for(int i=0;i<n;i++)
    {
        mas[i] = rand() % (max - min + 1) + min;
        cout<<mas[i]<<" ";
    }
    cout<<endl;
    for(int i=0;i<n;i++)
    {
        if(mas[i]<0) mas[i]=abs(mas[i]);
        cout<<mas[i]<<" ";
    }
    delete[] mas;
    getch();
    return 0;
}
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
27.06.2012, 09: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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <memory.h>
 
#define N 12
 
int main()
{
    int* X = new int[N];
    memset((void*)X, 0x00, sizeof(int) * N);
 
    for (int z = 0; z < N; z++)
    {
        X[z] = rand() % 6 - 3;
        printf("%d ",X[z]);
    }
 
    printf("\n");
 
    for (int i = 0; i < N; i++)
        if (X[i] < 0) X[i] = -X[i];
 
    for (int k = 0; k < N; k++)
        printf("%d ",X[k]);
 
    printf("\n");
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/fecefd...94cdcdfc5abf16
Aesonet
23 / 23 / 1
Регистрация: 04.04.2012
Сообщений: 119
27.06.2012, 12:14     Заменить в массиве все отрицательные элементы на их модули #4
можно еще использовать функцию
C++
1
fabs(int x);
gooseim
Эксперт C++
500 / 404 / 35
Регистрация: 23.09.2010
Сообщений: 1,139
27.06.2012, 13:08     Заменить в массиве все отрицательные элементы на их модули #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <iterator>
 
int main()
{
   const size_t SIZE = 12;
   
   int array[SIZE];
   
   std::srand((unsigned)std::time(0));
   std::generate(array, array + sizeof(array) / sizeof(array[0]), [](){return std::rand() % 6 - 3;});
   std::copy(array, array + sizeof(array) / sizeof(array[0]), std::ostream_iterator<int>(std::cout, "\t"));
   std::cout << std::endl;
   std::for_each(array, array + sizeof(array) / sizeof(array[0]), [](int& val){val = std::fabs(val);} );
   std::copy(array, array + sizeof(array) / sizeof(array[0]), std::ostream_iterator<int>(std::cout, "\t"));
   std::cout << std::endl;   
}
http://liveworkspace.org/code/86cb7b...5947840e96fa23
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
27.06.2012, 14:28     Заменить в массиве все отрицательные элементы на их модули #6
Andrey.K, зачем тебе глобальная переменная?
Yandex
Объявления
27.06.2012, 14:28     Заменить в массиве все отрицательные элементы на их модули
Ответ Создать тему
Опции темы

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