> > > > for(i=0; i<9; i++)
> > > > {
> > > > slut[i]+= slut[i+1];
> > > > }
> > > >
> > > > middel = slut[9] / 10; //
> Så vidt jeg vet er gjennomsnittet summen av alle leddene delt på
> antall ledd (eller misforstår jeg oppgaven, for at jeg forstår ikke
> egentlig hva koden over regner ut?):
>
>
> middel = 0;
> for ( i = 0; i < 10; ++i )
> middel += sum[i];
> middel /= 10;
>
Jo, nu kan jeg også se at der er noget der ikke hænger sammen. Jeg har vist
gjort det i omvent rækkefølge. Hvis jeg skrev slut[i+1] += slut[i] gav det
nok noget mere mening, for før har jeg forhøjet slut[i] med slut[i+1] og
værdien forblev i slut[i], næste gang tog jeg slut[i+1] som ikke indeholt
noget sum
Well, en ny begynder fejl
middel +=sum[i] virker meget
mere logisk. Og jeg vidste ikke middel /=10; kunne lade sig gøre. Nu har jeg
lært noget nyt, tusind tak for hjælpen, alle sammen
>
> ... uten noe form for sjekking.
>
> Det er også interessant å spørre hva slags verdier amplitudene dine
> har, for å få en ide om størrelsesordenen på tallene (spesielt ift.
> sizeof(int) på den aktuelle platformen).
>
Jeg arbejder egentlig på en lydtryksmåler. Altså PIC'en modtager lyd
signaler i forskellige frekvenser (mellem 20 Hz-20 kHz) med forskellige
amplituder. Signalet fra en mikrofon forstærkes så højest værdi fra
mikrofonen (antagelse) ligger ved 5 volt, hvilket er max værdi AD
konverteren kan tage imod. Dvs amplituden er mellem 0-5 V ved indgangen af
PIC18F452, og disse værdier udtrykkes i 10 bit.
>
> > > Hva legger du i "får jeg en 8 bit verdi"? middel er alltid mindre
> > > enn 256?
> >
> > Jep, den overstiger ikke 256
>
>
> Akkurat, ja. Jeg anbefaler en testutskrift på alle de kritiske stedene
> (dvs. der hvor du oppdaterer slut[] samt beregningene av
> gjennomsnittet).
>
>
>
>
>
> ivr
> --
> "...but it's HDTV -- it's got a better resolution than the real world."
> -- Fry, "When aliens attack"