Информатика, вопрос задал stellka99 , 7 лет назад

C++.
Есть ли в одномерном массиве три подряд идущих одинаковых элемента

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

Ответил temateam
0

Изи задача)

Исправлено:

#include <iostream>


using namespace std;


int main()

{

   cout << "Task 30257728!" << endl;


   const int N = 10;


   // создаем массив

   int m[N] = {1,1,1,4,5,6,7,8,9,3};


   // пробегаемся по массиву

   for (int i = 0; i < N; i++) {


       // смотрим только те, что идут до mLength - 2

       if (i < N - 2) {


           // если m[i] и + 1 и + 2 равны, то переключаем выходим из программы

           if (m[i] == m[i + 1] && m[i + 1] == m[i + 2]) {

               cout << "Array have dupes" << endl;

               return 0;

           }

       }


   }


   return 0;

}


старое--------------------------


Как-то так:

#include <iostream>


using namespace std;


int main()

{

   cout << "Task 30257728!" << endl;


   // созданем массив

   int m[] = {1,1,1,4,5,6,7,8,9,3,3,4,2,3,3};


   // считаем его размер

   int mLength = (sizeof(m)/sizeof(*m));


   // делаем переключатель

   bool haveDupes = false;


   // пробегаемся по массиву

   for (int i = 0; i < mLength; i++) {


       // смотрим только те, что идут до mLength - 2

       if (i < mLength - 2) {


           // если m[i] и + 1 и + 2 равны, то переключаем haveDupes

           if (m[i] == m[i + 1] && m[i + 1] == m[i + 2]) {

               haveDupes = true;

           }

       }


   }


   // если переключен haveDupes

   if (haveDupes) {

       cout << "Array have dupes" << endl;

   } else {

       cout << "Array haven't dupes" << endl;

   }


   return 0;

}


Ответил DigitalAnnihilator
0
Так отталкивается алгоритм проверяя значение 1 еле мента сзади и 1 спереди, вот отсюда берется вторая еденица
Ответил DigitalAnnihilator
0
Я напишу более простой и понятный вам алгоритм в течении часа.
Ответил DigitalAnnihilator
0
Только утро, так что нужно хоть пзавтракать)
Ответил DigitalAnnihilator
0
А нет, не напишу, уже нет такой возможности.
Ответил DigitalAnnihilator
0
К слову, ответ не полный, почему программа ничего не выводит если дублиактов нет?
Новые вопросы