Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105

Проверить чередуются ли в массиве положительные и отрицательные числа

01.03.2021, 23:18. Показов 2455. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
коллеги подскажите плз, где в коде ошибка? не правильно работает(

//3. Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные и отрицательные числа. Если чередуются, то вывести 0, если нет, то вывести порядковый номер первого элемента, нарушающего закономерность.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
int main()
{
const int N = 20;
int a[N];
int i,n;
cout << "Введите размерность массива не больше 20 -> ";
cin >> n;
for(i=0;i<n;i++){
cout << "a["<<i<<"]=";
cin >> a[i];
}
for(i=0;i<n-1;i++)
if (a[i]*a[i+1] >= 0)
    break;
if (i == n-1)
cout << "0";
else
cout << i+1;
cout << endl;
return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.03.2021, 23:18
Ответы с готовыми решениями:

Проверить, чередуются ли в массиве положительные и отрицательные числа.
Прошу ПОМОГИТЕ! Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные и отрицательные числа. Если...

Проверить, чередуются ли в массиве положительные и отрицательные числа
Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные и отрицательные числа. Если чередуются, то вывести...

Проверить, чередуются ли в массиве положительные и отрицательные числа
Не разбираюсь с методом классов, прошу помочь. Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные...

15
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5209 / 2926 / 1509
Регистрация: 14.12.2018
Сообщений: 5,266
Записей в блоге: 1
01.03.2021, 23:37
Цитата Сообщение от ge17 Посмотреть сообщение
чередуются ли в нем положительные и отрицательные числа
Дайте пример, можно?
0
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
01.03.2021, 23:41  [ТС]
Volga_, пользователь сам определяет какие числа вводит в массив, или это я не правильно понимаю условия задачи(
0
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5209 / 2926 / 1509
Регистрация: 14.12.2018
Сообщений: 5,266
Записей в блоге: 1
01.03.2021, 23:42
Лучший ответ Сообщение было отмечено ge17 как решение

Решение

Цитата Сообщение от ge17 Посмотреть сообщение
пользователь сам определяет какие числа вводит в массив, или это я не правильно понимаю условия задачи(
Попробуйте:
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
#include <iostream>
using namespace std;
int main()
{
    const int N = 20;
    int a[N];
    int i, n;
    cout << "Введите размерность массива не больше 20 -> ";
    cin >> n;
    for (i = 0; i < n; i++) {
        cout << "a[" << i << "]=";
        cin >> a[i];
    }
    int flg = 0, iVP = 0;
    for (i = 0; i < n - 1; i++)
        if (a[i] * a[i + 1] > 0)
        {
            flg = 1;
            iVP = i;
            break;
        }
    if (flg==0)
        cout << "0";
    else
        cout << iVP;
    cout << endl;
    return 0;
}
1
21 / 19 / 6
Регистрация: 25.11.2017
Сообщений: 708
01.03.2021, 23:44
C++
1
cout << i + 2;
0
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5209 / 2926 / 1509
Регистрация: 14.12.2018
Сообщений: 5,266
Записей в блоге: 1
01.03.2021, 23:46
Цитата Сообщение от Andy_Coldfield Посмотреть сообщение
cout << i + 2;
Цитата Сообщение от ge17 Посмотреть сообщение
if (a[i]*a[i+1] >= 0)
Это должно быть i или i+1, не i+2 !
0
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
01.03.2021, 23:47  [ТС]
Andy_Coldfield, а почему
cout << i + 2;?
0
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
01.03.2021, 23:54  [ТС]
всеравно не пойму( почему оно не выводит в консоли номер того числа которое по условию задачи нарушает закономерность
0
21 / 19 / 6
Регистрация: 25.11.2017
Сообщений: 708
01.03.2021, 23:54
ge17, попробуй и посмотри с разными размерами массива и увидишь) На каком элементе у тебя будет знакочередование пропадать
0
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
01.03.2021, 23:58  [ТС]
всеравно не то
0
21 / 19 / 6
Регистрация: 25.11.2017
Сообщений: 708
01.03.2021, 23:59
ge17, Почему плюс два? Ответ прост, массив нумеруется с нуля, первый элемент в ячейке ноль. Второе когда перемножаем нам нужен следующий элемент а не текущее значение i.

Смотри, есть массив {4,-5,9,-8,7,7}. Знакочередование пропадает на 6 позиции, а переменная i на этот момент равна 4.

Добавлено через 1 минуту
ge17, ты правильно все сделал, только позицию не совсем корректно вывел)
1
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
02.03.2021, 00:00  [ТС]
Andy_Coldfield, или я не могу понять условия задачи или код не то компилирует , подскажите плз)
0
21 / 19 / 6
Регистрация: 25.11.2017
Сообщений: 708
02.03.2021, 00:05
Лучший ответ Сообщение было отмечено ge17 как решение

Решение

ge17, попробуй с разными размерами массива и все поймешь

Добавлено через 24 секунды
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
int main()
{
const int N = 20;
int a[N];
int i,n;
cout << "Введите размерность массива не больше 20 -> ";
cin >> n;
for(i=0;i<n;i++){
cout << "a["<<i<<"]=";
cin >> a[i];
}
for(i=0;i<n-1;i++)
if (a[i]*a[i+1] >= 0)
break;
if (i == n-1)
cout << "0";
else
cout << i+2;
cout << endl;
return 0;
}
Добавлено через 4 минуты
ge17, понял теперь?
1
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
02.03.2021, 00:06  [ТС]
Andy_Coldfield, да спасибо огромное)
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
02.03.2021, 00:37
Цитата Сообщение от Andy_Coldfield Посмотреть сообщение
a[i]*a[i+1] >=0
C++
1
 if (a[i]>=0 == a[i+1]>=0)
0
0 / 0 / 0
Регистрация: 26.01.2021
Сообщений: 105
02.03.2021, 01:00  [ТС]
Volga_, ваш код правильно работает , спасибо огромное
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.03.2021, 01:00
Помогаю со студенческими работами здесь

Массив: Проверить, чередуются ли в массиве положительные и отрицательные числа
3. Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные и отрицательные числа. Если чередуются, то...

В массиве размера n проверить, чередуются ли положительные и отрицательные числа
Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные и отрицательные числа. Если чередуются, то вывести...

Дан вещественный массив размера N. Проверить чередуются ли в нем положительные и отрицательные числа
Дан вещественный массив размера N. Проверить чередуются ли в нем положительные и отрицательные числа. (Да, Нет) Помогите пожалуйста...

Проверить, чередуются ли в массиве положительные и отрицательные числа
Дан целочисленный массив из N элементов. Проверить, чередуются ли в нем положительные и отрицательные числа. Если да- вывести True, если...

Проверить, чередуются ли в массиве положительные и отрицательные числа
Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем положительные и отрицательные числа. Если чередуются, то вывести...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru