C ++ - Добавление чисел в список?(как Python) - PullRequest
0 голосов
/ 25 апреля 2018

Я очень новичок в программировании, но пытаюсь выучить как Python, так и C ++ (один связан с работой, другой - с большим количеством свободного времени).Я использую следующий код в C ++ для измерения с помощью датчика парковки:

> for (i=0; i<20; i++) {
>     digitalWrite(TRIG1, LOW);
>     delay(2);
>     digitalWrite(TRIG1, HIGH);
>     delay(10);
>     digitalWrite(TRIG1, LOW);
>     d = pulseIn(ECHO1, HIGH);
>     d = d/58;
>     delay(13);
>     }

Это должно измерить расстояние и сохранить его в d.Это будет происходить 20 раз за 500 мс.Теперь я хочу сохранить каждое из этих 20 измерений и получить из него значение медианы.

В Python я могу создать список, а затем добавить к нему числа.Есть ли такой эквивалент в C ++?Если нет, какой другой метод будет рекомендован для получения среднего значения без написания ужасно длинного кода?

1 Ответ

0 голосов
/ 25 апреля 2018

Если вам нужно использовать простой C (++), используйте массив целочисленных значений:

int d[20];

for(int i = 0; i < 20; ++i)
  d[i] = measureValue();

Если доступна STL (Стандартная библиотека шаблонов), используйте std :: vector:

#include <vector>

std::vector<int> d;

for(int i = 0; i < 20; ++i)
  d.push_back(measureValue());

Если вы пишете для Arduino, вы можете установить Standard C ++ для Arduino (см. https://github.com/maniacbug/StandardCplusplus/blob/master/README.md)

...