сравнение массивов
- Войдите на сайт для отправки комментариев
Ср, 01/06/2011 - 11:48
Есть какая нибудь возможность сравнить два массива не перелистывая по каждому элементу? такой код не катит:
if(a[]==b[]){ // какое то действие }
Можно вычислить точное среднее число массива, c запятой даже, и сравнить с другим таким средним числом другого массива) Типа проверка CRC;) А там будет и видно какой массив по этому среднему больше но это примитивизм, по хорошему напишите вашу задачу
Задача проста. Как мужик на рыбалке с поплавком сидит. Ждет пока поплавок дернется ... так же и у меня программа должна ждать клева :)
loop() постоянно опрашивает дата порт от сдвигового регистра и заносит данные в массив.
Далее стоит проверка если массив изменился то совершать какие то действия если не изменился то продолжать опрашивать.
А поподробнее можно про то как узнать среднее число массива?
И еще напрашивается вопрос приравняет ли один масив к другому через оператор "="? как у меня в коде?
Вы неправильно мыслите. Для экономии процессорного времени, да и по простой логиге, если уж у Вас есть цикл в котором считываются данные и заполняется массив, почему бы в этом же цикле не сравнивать значения с сохраненным массивом.
Button[]!=Button_old[] - такого сравнения нет, есть извращение типа if( memcmp(array1, array2,ARRAY_SIZE) == 0), но внутри процессора это будет еще один цикл.
А на самом деле Вам вообще не нужно два массива. Просто сравниваете новое значение с сохраненным в цикле и смотрите изменилось ли. Если изменилось выставляете флажок. И заносите новое значение в массив.
Точно! Спасибо. И как сам не догадался :(