§ 14. Преобразование элементов массива

14.2. Изменение элементов массива в зависимости от условий

Пример 14.1. Задан одномерный массив целых чисел. Преобразовать его элементы по следующему правилу: положительные элементы заменить значением 2, а отрицательные — увеличить на 5.

Этапы выполнения задания

I. Исходные данные: одномерный массив а, количество элементов n.

II. Результат: преобразованный массив a.

III. Алгоритм решения задачи.

1. Ввод исходных данных. 
2. В цикле проверяем текущий элемент. Если он положительный, то заменяем его на 2. Если отрицательный, то прибавляем к нему 5. Важно помнить, что отрицанием условия «элемент положительный» является условие «элемент не положительный», что подразумевает возможность равенства элемента 0 (нули не изменяются). Поэтому нужны два оператора ветвления для проверки условия задачи. 
3.  Вывод результата.

IV. Описание переменных: n – int, а – vector <int>.

Пример 14.1.

V. Программа:

#include <iostream>

#include <vector>

 

using namespace std;

 

int main()

{

  int n;

  cout << "n = ";

  cin >> n;

  vector <int> a(n);

  for (int i = 0; i < n; i++)

    cin >> a[i];

  for (int i = 0; i < n; i++){

    if (a[i] > 0)

      a[i] = 2;

    if (a[i] < 0)

      a[i] += 5 ;

  }

  for (int i = 0; i < n; i++)

    cout << a[i] << " ";

  cout << endl;

  return 0;

}

VI. Тестирование.

VII. Анализ результатов. Элементы 3 и 5 заменены на 2, элементы -2 и -1 увеличены на 5, элемент 0 остался неизмененным, что соответствует условию задачи.