Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ЗАДАНИЕ 4.13 (1)
- // Задан массив действительных чисел.
- // Определить, сколько раз меняется знак в данной последовательности чисел,
- // напечатать номера позиций, в которых происходит смена знака.
- #include <iostream> // Для ВВОДА и ВЫВОДА
- using namespace std; // ПРОСТРАНСТВО ИМЁН
- int main() {
- int size; // Размер массива
- int count = 0; // Счётчик минусов
- // Ввод размерма массива
- cout << "Enter size array: ";
- cin >> size;
- int * arr = new int[size]; // Объявление массива
- // Ввод первого элемента (*)
- cout << "Enter 1 element: ";
- cin >> arr[0];
- // Заполнение массива
- for (int i = 1; size > i; i++) {
- cout << "Enter " << i + 1 << " element: ";
- cin >> arr[i];
- if (arr[i] < 0 && arr[i - 1] >= 0) {
- // Если текущее значение отрицательное,
- // а прошлое значение было положительным:
- count++;
- } else if (arr[i] >= 0 && arr[i - 1] < 0) {
- // Если текущее значение положительное,
- // а прошлое значение было отрицательным:
- count++;
- }
- }
- cout << endl;
- // Вывод count
- cout << "Count: " << count << endl;
- cout << "Index's:";
- // Поиск смен знаков
- for (int i = 1; size > i; i++) {
- if (arr[i] < 0 && arr[i - 1] >= 0) {
- // Если текущее значение отрицательное,
- // а прошлое значение было положительным:
- cout << " " << i + 1;
- } else if (arr[i] >= 0 && arr[i - 1] < 0) {
- // Если текущее значение положительное,
- // а прошлое значение было отрицательным:
- cout << " " << i + 1;
- }
- }
- cout << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement