Вопрос задан 25.07.2018 в 01:20. Предмет Информатика. Спрашивает Шайсламова Лия.

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

просмотре от его начала меняют знак. Например, в массиве 10, -4, 12, -4, -89, знак меняется три раза.Прошу на C++
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Степанов Степан.
#include <iostream>
#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;
}
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Хорошо! Чтобы определить, сколько раз элементы массива меняют знак при просмотре от его начала, мы можем использовать цикл для перебора всех элементов массива и проверять изменение знака между соседними элементами.

Вот пример кода на языке C++ для решения этой задачи:

```cpp #include using namespace std;

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` знак меняется три раза.

Надеюсь, это поможет вам решить задачу! Если у вас есть еще вопросы, пожалуйста, дайте знать.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос