Primer 9 - Srednja vrednost

Vektor signal[] napuniti sa 600 slučajnih brojeva u opsegu vrednosti od 0 do 4096. Implementirati algoritam koji broji koliko odbiraka ima amplitudu vecu od srednje vrednosti brojeva u vektoru vek[] i nađenu vrednost smešta u promenljivu brojac.

Rešenje

#include <math.h>
#include <stdlib.h>

#define DUZINA 600
int signal[DUZINA];

void generisi_slucajni_signal(int s[], int n, int min, int max) {
    int i;

    for (i=0; i<n; i++) {
        s[i] = rand()%(abs(min)+max)-abs(min);
    }
}

float srednja_vrednost(int s[], int n) {
    int i;
    long sum=0;

    for (i=0; i<n; i++) {
        sum+=s[i];
    }
    return (float)((float)sum/(float)n);
}

int main(void) {
    int brojac=0, i;
    float srvr;

    generisi_slucajni_signal(signal, DUZINA, 0, 4096);
    srvr = srednja_vrednost(signal, DUZINA);

    // brojanje negativnih
    for (i=1; i<DUZINA; i++) {
        if (signal[i]>srvr) {
            brojac++;
        }
    }

    while(1); // mrtva petlja
}

results matching ""

    No results matching ""