Tablica dwuwymiarowa

0

Witam,
mam takie zadanko do wykonania: "Uzupełnij funkcję int rtg_check( unsigned short rtg_picture[25][25] ) tak, aby zwracała liczbę pikseli, których jasność wyrażona w wartości typu unsigned short odbiega od średniej jasności badanego fragmentu zdjęcia o więcej niż 50%."

Poniżej program który napisałam (zwraca on wartości które mocno odbiegają od poprawnych, zadanie z kursu interaktywnego więc wartości w rtg_picture[25][25] generowane są losowo ;)):

int rtg_check( unsigned short rtg_picture[25][25] )
{
    float suma = 0;
    float avrg = 0;
    int licznik = 0;

    for(int i = 0; i < 25; i++)
    {
        for(int j = 0; j < 25; j++)
            suma += rtg_picture[i][j];
    }

    avrg = suma / 625;

    for(int i = 0; i < 25; i++)
    {
        for(int j = 0; j < 25; j++)
        {
            if(rtg_picture[i][j] > (avrg * 1.5))
                licznik++;
        }
    }

    return licznik;
}

Nie mam zielonego pojęcia o co tam chodzi. Próbowałam też zamiast

 if(rtg_picture[i][j] > (avrg * 1.5) 

dać if(rtg_picture[i][j] < (avrg * 0.5)

 co oczywiście nic nie zmieniło ;)
2

Próbka która odbiega od średniej o więcej niż 50% to jest taka która jest większa od 150% średniej albo mniejsza od 50% średniej. Więc jeśli juz to:

if((rtg_picture[i][j] > (avrg * 1.5)) || (rtg_picture[i][j] < (avrg * 0.5))){

}

Lub też inaczej: abs(próbka - avg) > 0.5 * avg czyli różnica między próbką i średnią jest większa od połowy średniej

0

Dzięki wielkie Shalom :D Cóż... czytanie ze zrozumieniem... może powinnam odpuścić programowanie i ogarnąć jeszcze raz na szybko podstawówkę... :D Dzięki raz jeszcze :>

1 użytkowników online, w tym zalogowanych: 0, gości: 1