Dobrý deň všetkým,
Asi troška obšírnejšie opíšem svoj problém.
Mám vytvorenú štruktúru, do ktorej sa mi zapisujú nejaké tie hodnoty. Daná štruktúra je reprezentovaná ako tabulka, Hodnoty, ktoré obsahuje sa aktualizujú vo funkcii aktualizaciaTabulky(). Vo funkcii display() sa dana tabulka zobrazuje na konzolu. Tabuľka pozostáva z niekoľkých stĺpcov. Prvý (najdôležitejší) stĺpec je IP adresa.
V ostatných stĺpcoch sú k daným IP adresam priradené rôzne parametre. Jedným z nich je parameter Bezpečnosť, ktorý získavám na základe výpočtu z predošlých parametrov. Parameter bezpečnosť je z rozsahu <-2; 2>.
Môj problém spočíva v tom, že z danej štruktúry, teda tabuľky, chcem vybrať len určitý počet IP adries (na základe hodnoty Bezpečnosťi), teda nejakých prvých N adries spolu s ich hodnotami. Pre jednoduchosť dajme tomu, že mám 10 IP adries a chcem vybrať len 5, ktoré majú najväčšiu hodnotu Rn. Musí to byť zovšeobecnené, teda tých IP adries tam môže byť N.
Na základe zvolených IP adries sa potom z nich vyberie jedna (pomocou ďalšieho parametra). Celý algoritmus výberu sa bude realizovať vo funkcii display().
Uvediem aj ukážky z kódu:
typedef struct TABULKA_PARANETROV
{
char* ip_adresa; //prvy stlpec tabulky typu smernik na char
int PVC; //treti stlpec tabulky typu integer
int PVNC; //stvrty stlpec tabulky typu integer
int pocet_rrep; //paraneter pre Dovernost
int pocet_rreq; //paraneter pre Dovernost
...
double BEZPECNOST;
struct TABULKA_PARANETROV *dalsi;
}TABULKA_PARANETROV;
Teda potrebujem pristúpiť k tej hodnote BEZPECNOST a vybrať polovicu IP adries ktoré budú mať najväčšie adresy?
Dalo by sa to nejako spraviť? Viete mi poradiť?
Ďakujem.