Массив

Тема в разделе "Микроконтроллеры AVR", создана пользователем Симилячник, 5 июл 2016.

Метки:
  1. Доброго времени суток, господа форумчане!

    Вопрос такой:

    "Можно ли создать массив из 180 ячеек, записать показания с датчика в каждую из ячеек, после этого, выбрать самое большое значение из всех ячеек и задать переменной это значение?"

    Заранее спасибо!
     
  2. ANV

    ANV Гуру

    Можно
     
  3. На ArduinoIDE?
     
  4. ANV

    ANV Гуру

    Да, даже если ячейки четырехбайтные long
     
  5. Насколько я знаю, есть функция max(); , которая выбирает наибольшее из 2 значений. Каким образом можно выбрать наибольшее из большого количества значений?
     
  6. ZAZ-965

    ZAZ-965 Гуру

    А зачем массив? Arduino хватит скорости сравнивать значения по мере поступления.
     
  7. Кстати, идея. Попробую так и сделать. Спасибо!
     
  8. ANV

    ANV Гуру

    Используя цикл for пройтись по всем элементам массива.
     
  9. ostrov

    ostrov Гуру

    Первое полученное значение заносите в переменную MAX, каждое следующее сравниваете с MAX, если оно больше, то вставляете туда это новое и так до конца измерений. В итоге в MAX будет максимальное значение.

    Хранить в памяти все 180 значений имеет смысл, например для сортировки. А так хоть среднее значение, хоть медиану можно считать налету.
     
  10. Tomasina

    Tomasina Сушитель лампочек Модератор

    а медиану из 5 значений как считать?
     
  11. ostrov

    ostrov Гуру

    Так же как из другого количества. Или вопрос с подвохом? )
     
  12. Tomasina

    Tomasina Сушитель лампочек Модератор

    нет, просто ни разу не приходилось сталкиваться, а, чую, скоро понадобится. ;)
     
  13. Vetrinus

    Vetrinus Гик

    Сортируете значения в массиве по возрастанию. Если количество чисел в массиве четно, то медиана - среднее арифметическое двух средних членов. Если нечетно, то медиана - значение среднего члена.
     
  14. ostrov

    ostrov Гуру

    Преимущество перед средним арифметическим - исключаются заведомо ошибочные показания.
     
  15. Vetrinus

    Vetrinus Гик

    Только в случае, если их мало.
     
  16. ostrov

    ostrov Гуру

    В любом случае резкие скачки исключаются и на результат не сказываются. А в среднем арифметическим даже один скачок может сильно испортить результат.