С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
wizard 007
0 / 0 / 0
Регистрация: 19.04.2011
Сообщений: 39
#1

Все положительные элементы массива, расположенные правее первого нулевого элемента, увеличить в два раза - C++

06.11.2011, 13:20. Просмотров 701. Ответов 3
Метки нет (Все метки)

Все положительные элементы массива а1, а2 , ..., а20, расположенные правее первого нулевого элемента, увеличить в два раза
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2011, 13:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Все положительные элементы массива, расположенные правее первого нулевого элемента, увеличить в два раза (C++):

Увеличить все элементы этого массива начиная с первого положительного элемента в два раза. - C++
Помогите решить в Borland c++ Если можно еще блок-схему Задан массив целых чисел. Увеличить все элементы этого массива начиная с...

Все элементы массива, меньшие заданного числа, увеличить в два раза - C++
Дана последовательность целых чисел,нужно все элементы, меньше заданного числа,увеличить в два раза

Даден массив. Все четные елементы массива уменьшыть в два раза, а нечетные увеличить в два раза. - C++
С++. Даден массив. Все четные елементы массива уменьшыть в два раза, а нечетные увеличить в два раза. Сложновато :sorry:

Всё четные элементы массива заменить на 100, а нечетные увеличить в два раза - C++
Всё парные элементы заменить на 100, а не парные увеличить в два раза Добавлено через 1 минуту Помогите пожалуйста Срочно

Упорядочить элементы массива в порядке возрастания, все элементы больше нуля увеличить в 3 раза - C++
Помогите пожалуйста Нужна прога: Есть массив X(n). Упорядочить его элементы в порядке возрастания, все элементы больше нуля...

Дана последовательность из целых чисел. Все элементы меньше заданного числа, увеличить в два раза - C++
дана последовательность из целых чисел, все элементы меньше заданного числа, увеличить в два раза

3
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
06.11.2011, 19:03 #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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <cstdlib>
#include <ctime>
 
template <int min, int max>
class RandomInteger {
 public:
  int operator()() {
    return rand() % (max - min + 1) + min;
  }
};
 
std::ostream &operator<<(std::ostream &stream,
  const std::vector<int> &array) {
  for (std::vector<int>::const_iterator i = array.begin();
    i != array.end(); ++i)
    stream << (*i) << (((i + 1) != array.end()) ? ", " : "");
  return stream;
}
 
void IncreasePositive(int &value) {
  if (value > 0) value *= 2;
}
 
int main(int argc, char *argv[]) {
  srand(time(NULL));
  size_t arraySize = 18 + rand() % 5;
  std::vector<int> array(arraySize);
 
  std::generate(array.begin(), array.end(), RandomInteger<-5, 5>());
 
  std::cout << array << std::endl;
 
  std::for_each(std::find(array.begin(), array.end(), 0), array.end(),
    IncreasePositive);
 
  std::cout << array << std::endl;
 
  return 0;
}
1
Сыроежка
Заблокирован
06.11.2011, 19:17 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от wizard 007 Посмотреть сообщение
Все положительные элементы массива а1, а2 , ..., а20, расположенные правее первого нулевого элемента, увеличить в два раза
Если использовать стандартные алгоритмы, то ваше задание делается в две строчки!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include   <algorithm>
#include   <functional>
 
int main()
{
   int a[20];
 
   //  задаете значения массива каким-нибудь образом. Можно при его инициализации int a[20] = { ...};
 
   int *p = std::find( a, a + 20, 0 );
 
   std::transform( p, a + 20, p, p, std::plus<int>() );  
 
   return ( 0 );
}
1
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
07.11.2011, 19:00 #4
Осталось только проверку на положительность значения воткнуть...
0
07.11.2011, 19:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2011, 19:00
Привет! Вот еще темы с ответами:

Увеличить все элементы матрицы на значение первого элемента найденной строки - C++
Найти в матрице первую строку, все элементы которой имеют отрицательное значение. Увеличить все элементы матрицы на значение первого...

Борланд Си++ (Увеличить все элементы массива, начиная с первого положительного) - C++
1) Задан массив целых чисел. Увеличить все элементы этого массива начиная с первого положительного элемента в два раза. Заранее...

Удалить из массива все элементы, встречающиеся ровно два раза - C++
помогите, пожалуйста, как написать код в с++? Дан целочисленный массив размера N. Удалить из массива все элементы, встречающиеся ровно...

Если последний элемент массива положителен, то все элементы массива увеличить на квадрат его максимального элемента - C++
Задача: Задан одномерный массив F(N) (N&lt;=60). Если последний элемент массива положителен, то все элементы массива увеличить на квадрат...


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

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

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