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

Преобразовать массив, заменив все положительные элементы единицами... - C++

Восстановить пароль Регистрация
 
Vanillaice
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 8
03.12.2012, 14:27     Преобразовать массив, заменив все положительные элементы единицами... #1
Задан одномерный массив А(10). Преобразуйте этот массив, заменив все положительные элементы единицами, а все отрицательные элементы нулями. Значения элементов исходного массива задайте самостоятельно, используя процедуру ввода данных с клавиатуры. Для ввода данных и обработки массива используйте оператор цикла FOR. Выведите на экран исходный и преобразованный массивы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2012, 14:27     Преобразовать массив, заменив все положительные элементы единицами...
Посмотрите здесь:

Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом — все отрицательные C++
C++ Преобразовать массив таким образом, чтобы сначала располагаись все положительные элементы, а потом-все отлицательные
Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом все отрицательные C++
Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом - все остальные C++
C++ Заменить все положительные элементы матрицы единицами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6469 / 2244 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
03.12.2012, 14:34     Преобразовать массив, заменив все положительные элементы единицами... #2
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <algorithm>
#include <iterator>
 
int main()
{
    int a[] = {-23, -3, 3, 4, -2, 2, -3, 43, -9, -3};
    std::transform(a, a+10, std::ostream_iterator<int>(std::cout, " "), [](int i){return i>0?1:0;});
}
0 0 1 1 0 1 0 1 0 0
Про for не дочитал. Ну да ладно.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,337
Завершенные тесты: 1
03.12.2012, 14:36     Преобразовать массив, заменив все положительные элементы единицами... #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
#include <iostream.h>
 
int main(int argc, char* argv[])
{
int Mas[10];
 
for(int i=0; i<10; i++)
  {
  cout << "Введите " << i << "-й элемент массива: ";
  cin >> Mas[i];
  }
 
cout << "Массив до обработки: ";
for(int i=0; i<10; i++)
  {
  cout << " " << Mas[i];
  }
 
for(int i=0; i<10; i++)
  {
  if(Mas[i]>0) Mas[i]=1;
  if(Mas[i]<0) Mas[i]=0;
  }
cout << endl;
cout << "Массив после обработки: ";
for(int i=0; i<10; i++)
  {
  cout << " " << Mas[i];
  }
 
cin.ignore(2);
        return 0;
}
Vanillaice
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 8
03.12.2012, 14:37  [ТС]     Преобразовать массив, заменив все положительные элементы единицами... #4
в Универе)
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
03.12.2012, 14:41     Преобразовать массив, заменив все положительные элементы единицами... #5
Задание как задание. Вот еще и я дописал свой вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <algorithm>
#include <array>
 
int main()
{
    std::array<int, 10> ar = {-8,-6,3,-7,1,6,-2,7,3,-1};
    std::for_each(ar.begin(), ar.end(), [](int& x){if(x>=0) x=1; else x=0;});
    for (const int x : ar) std::cout<<x<<" ";
    std::cout<<"\n";
    system("pause");
    return 0;
}
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
03.12.2012, 15:28     Преобразовать массив, заменив все положительные элементы единицами... #6
yuron_477,
C++
1
if(x>=0) x=1; else x=0;
ну вот так в одну строчку вообще никуда не годится.
C++
1
x = x >= 0 ? 1 : 0;
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,337
Завершенные тесты: 1
03.12.2012, 15:46     Преобразовать массив, заменив все положительные элементы единицами... #7
Господа, это все конечно здорово и замечательно, но прежде чем отвечать иногда занятно бывает задание почитать.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2012, 15:48     Преобразовать массив, заменив все положительные элементы единицами...
Еще ссылки по теме:

Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом все отрицательные C++
C++ Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом все отрицательные
Преобразовать массив, чтобы сначала располагались все положительные элементы, а потом – все отрицательные C++

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

Или воспользуйтесь поиском по форуму:
Vourhey
Почетный модератор
6469 / 2244 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
03.12.2012, 15:48     Преобразовать массив, заменив все положительные элементы единицами... #8
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Господа, это все конечно здорово и замечательно, но прежде чем отвечать иногда занятно бывает задание почитать.

Не по теме:

Отстань с нравоучениями Каждый пишет, как ему нравится.

Yandex
Объявления
03.12.2012, 15:48     Преобразовать массив, заменив все положительные элементы единицами...
Ответ Создать тему
Опции темы

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