Вопрос задан 02.11.2023 в 16:25. Предмет Информатика. Спрашивает Ильясов Булат.

Помогите пожалуйста решить задачу (для С): Определить, имеется ли в одномерном числовом массиве A

из n элементов, хотя бы одна пара совпадающих по величине соседних элементов.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Иванов Вадим.

Ответ:

#include <stdio.h>

#include <conio.h>

#include <locale.h>

main()

{

   setlocale(0, "");

   int n;

   printf("Введите размер массива: ");

   scanf("%d", &n);

   int A[n];

   printf("Введите элементы массива: ");

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

   {

       scanf("%d", &A[i]);

   }

   int check = 0;

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

   {

       if (A[i] == A[i + 1])

       {

           check++;

           break;

       }

   }

   if (check != 0)

   {

       printf("YES");

   }

   else

   {

       printf("NO");

   }

   getch();

}

Объяснение:

#include <stdio.h>  // Библиотека ввода-вывода

#include <conio.h>  // Библиотека, содержащая функцию getch() - пауза

#include <locale.h>  // Библиотека локализации

main()

{

   setlocale(0, "");  // Локализация

   int n;  // Создание целочисленной переменной, являющейся размером массива

   printf("Введите размер массива: ");  // Вывод сообщения в консоль

   scanf("%d", &n);  // Ввод размера массива с клавиатуры

   int A[n];  // Создание целочисленного массива A размера n

   printf("Введите элементы массива: ");  // Вывод сообщения в консоль

   for (int i = 0; i < n; i++)  // Заполнение массива с клавиатуры

   {

       scanf("%d", &A[i]);  // Заполнение массива с клавиатуры

   }

   int check = 0;  // Переменная, для проверки на пары одинаковых элементов

   for (int i = 0; i < n - 1; i++)  // Идем по всему массиву

   {

       if (A[i] == A[i + 1])  // Если элемент i = следующему после себя элементу

       {

           check++;  // К переменной check прибавляем единицу

           break;  // Выходим из цикла for

       }

   }

   if (check != 0)  // Если значение переменной check 0

   {

       printf("YES");  // Выводим "YES"

   }

   else  // Иначе

   {

       printf("NO");  // Выводим "NO"

   }

   getch();  // Для завершения программы необходимо нажать любую клавишу

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи вам необходимо пройти по всем элементам массива `A` и проверить, есть ли хотя бы одна пара соседних элементов, которые совпадают по величине. Вы можете решить эту задачу с использованием цикла, пройдя по элементам массива и сравнивая каждый элемент с его соседом. Вот пример на языке C:

```c #include

int main() { int n; // Размер массива printf("Введите размер массива: "); scanf("%d", &n); int A[n]; // Объявление массива размером n // Ввод элементов массива printf("Введите элементы массива:\n"); for (int i = 0; i < n; i++) { scanf("%d", &A[i]); } // Проверка наличия пары совпадающих соседних элементов int hasDuplicate = 0; // Флаг, показывающий, найдена ли пара for (int i = 1; i < n; i++) { if (A[i] == A[i - 1]) { hasDuplicate = 1; break; // Нашли пару, выходим из цикла } } if (hasDuplicate) { printf("В массиве есть хотя бы одна пара соседних совпадающих элементов.\n"); } else { printf("В массиве нет пар соседних совпадающих элементов.\n"); } return 0; } ```

В этом примере программа сначала запрашивает размер массива и вводит элементы. Затем она проходит по массиву и сравнивает каждый элемент с предыдущим. Если находится пара совпадающих соседних элементов, устанавливается флаг `hasDuplicate`, и программа выводит сообщение о наличии пары. Если пара не найдена, выводится сообщение о ее отсутствии.

0 0

Похожие вопросы

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

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

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