Hi, cause buffer size(2000) is bigger than any actual number (0-1000). you should promote the division opoeration to float in order to get something different from cero, that is,
average += (1.0 * x) / buff_size; the 1.0 * will do the trick. then if you whant just an integer as result you should cast the average to int that is, average = (int) average; good luck -Bill On Sat, Sep 26, 2009 at 1:37 AM, Akankshu Dhawan <[email protected]> wrote: > Hi All > I am using IRIS motes and wanted to calculate average values for 2000 > values so I decided dividing each one of them by the BUF_SIZE (2000) and > then transferring it to a variable. This involves handling float values, > since max adc value is 1000(approx) , but when I do this division all values > I get are zero... can you tell me how I can deal with floating values ? > > > or if there is a predefined function for calculating averages ? > > I dont need the average value to be floating .. that final value should be > integer... > > so basically, I have 2000 values between 0-1000 and I want their > average/mean value.... do you have any suggestions ? > > Thanks > Akankshu > > -- > First they ignore you, then they laugh at you, then they fight you, then > you win. > - Mahatma Gandhi > > _______________________________________________ > Tinyos-help mailing list > [email protected] > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help > -- Ing. Guillermo De Cesco Invenio Ingenieria srl. tel: (54)2944 442119 web: www.invenioing.com Av. Pioneros 4163 Dpto 6. CP(R8402AMH) San Carlos de Bariloche. Rio Negro, Argentina.
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
