De ce contează?
Pe o hartă cu becuri de Crăciun, fiecare bec are o adresă: atâția metri spre dreapta, atâția metri în sus. Dacă vrei să afli care e cel mai din stânga bec, sau cât de mare e cutia care le cuprinde pe toate, nu studiezi un singur bec — treci pe lângă fiecare și ții minte ce ai văzut până acum. Un set de puncte în plan se prelucrează exact așa.
Ce este
În lecția despre sistemul cartezian ai învățat că un punct e o pereche de coordonate: o valoare pe axa orizontală (x) și una pe axa verticală (y). De obicei însă nu lucrezi cu un singur punct, ci cu mai multe deodată: vârfurile unui poligon, pozițiile unor orașe, colțurile unei figuri.
Un set de puncte este pur și simplu o listă: punctul 0 are coordonatele lui, punctul 1 pe ale lui și așa mai departe. Ca să afli ceva despre el — cel mai din stânga punct, dacă două puncte coincid, cât de „lat” e setul — faci același lucru ca la parcurgerea unui vector de numere: treci o singură dată pe lângă fiecare punct și acumulezi pe parcurs ce te interesează.
Un set de puncte = un vector de perechi (x, y). Fiecare punct ține două numere care merg împreună, așa că în loc de doi vectori separați x[] și y[] folosim un singur vector de struct Punct. Indexul i îți dă tot punctul deodată: p[i].x și p[i].y. Parcurgerea e identică cu cea a unui vector de numere — doar că la fiecare pas ai în mână două coordonate, nu una.