
Прошу на C++ Дан массив ненулевых целых чисел. Определить, сколько раз элементы массива при
просмотре от его начала меняют знак. Например, в массиве 10, -4, 12, -4, -89, знак меняется три раза.Прошу на C++

Ответы на вопрос

#include <ctime>
#include <cstdlib>
using namespace std;
int main()
{
srand (time(NULL));
int a[10],k = 0;
for (int i = 0; i<10; i++)
{
do
{
a[i] = rand()%20-10;
}
while (a[i]==0);
cout <<a[i] <<" ";
}
cout <<endl;
for (int i = 0; i<9; i++)
if ((a[i]>0 && a[i+1]<0) || (a[i]<0 && a[i+1]>0))
++k;
cout <<"Kol-vo: " <<k <<endl;
return 0;
}



Хорошо! Чтобы определить, сколько раз элементы массива меняют знак при просмотре от его начала, мы можем использовать цикл для перебора всех элементов массива и проверять изменение знака между соседними элементами.
Вот пример кода на языке C++ для решения этой задачи:
```cpp
#include
int main() { int arr[] = {10, -4, 12, -4, -89}; int n = sizeof(arr) / sizeof(arr[0]); int count = 0;
for (int i = 1; i < n; i++) { if ((arr[i - 1] > 0 && arr[i] < 0) || (arr[i - 1] < 0 && arr[i] > 0)) { count++; } }
cout << "Количество изменений знака: " << count << endl;
return 0; } ```
В этом примере мы используем переменную `count` для отслеживания количества изменений знака. Мы начинаем с `i = 1`, так как нам нужно сравнивать каждый элемент с предыдущим. Если знак элемента `arr[i]` отличается от знака элемента `arr[i - 1]`, мы увеличиваем счетчик `count` на 1.
В результате выполнения этого кода на экран будет выведено "Количество изменений знака: 3", так как в массиве `arr` знак меняется три раза.
Надеюсь, это поможет вам решить задачу! Если у вас есть еще вопросы, пожалуйста, дайте знать.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili