matematica:asd:asd_16:progetto_16
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Prossima revisione | Revisione precedente | ||
| matematica:asd:asd_16:progetto_16 [22/02/2017 alle 11:09 (9 anni fa)] – creata Roberto Grossi | matematica:asd:asd_16:progetto_16 [03/07/2017 alle 14:11 (9 anni fa)] (versione attuale) – Roberto Grossi | ||
|---|---|---|---|
| Linea 1: | Linea 1: | ||
| - | TBA | + | ====== Progetto di ASD 2016/2017 ====== |
| + | |||
| + | Il progetto utilizza le mappe stradali disponibili sul sito [[http:// | ||
| + | |||
| + | * Piazza Chiara Gambacorti | ||
| + | * Piazza dei Cavalieri | ||
| + | * Piazza dell' | ||
| + | * Piazza Domenico Guerrazzi | ||
| + | * Piazza Francesco Carrara | ||
| + | * Piazza San Francesco | ||
| + | * Piazza San Martino | ||
| + | * Piazza San Paolo a Ripa d' | ||
| + | * Piazza San Silvestro | ||
| + | * Piazza Vittorio Emanuele II | ||
| + | |||
| + | Il progetto richiede di scrivere un programma per trovare un ordine di visita delle piazze in modo che la distanza totale **percorsa a piedi** sia breve, rispettando i sensi unici delle strade percorse: la distanza tra due piazze deve essere calcolata utilizzando la mappa di Pisa indicata sopra. Il programma prende in ingresso tale mappa e fornisce in uscita, oltre alla distanza totale percorsa, la sequenza dei nomi delle corrispondenti vie (chiaramente in ordine di percorrenza). | ||
| + | |||
| + | Per facilitare l’accesso ai dati codificati nella mappa, sono disponibili delle {{ : | ||
| + | * **nodi**: sono punti nel globo terrestre di cui si conoscono longitudine e latidudine. Inoltre, le caratteristiche del nodo sono memorizzate in un array di tag (vedi anche http:// | ||
| + | * **way**: da non confondere con le strade, descrivono una qualsiasi linea spezzata in più punti: strada, muro, contorno di un parco, ecc. Si conosce la sequenza di nodi in essa contenuti e un array di tag (vedi anche http:// | ||
| + | * **relazioni**: | ||
| + | |||
| + | I tag usati per i nodi e le way nella mappa sono piuttosto numerosi, e {{ : | ||
| + | |||
| + | Il programma '' | ||
| + | |||
| + | < | ||
| + | #include " | ||
| + | int main() { | ||
| + | FILE *fd = fopen(" | ||
| + | osm_map_t* map = osm_parse(fd); | ||
| + | unsigned i; | ||
| + | for (i=0; i< | ||
| + | osm_node_t* node = dyn_get(map-> | ||
| + | printf(" | ||
| + | unsigned j=0; | ||
| + | for (j=0; j< | ||
| + | osm_tag_t* tag = dyn_get(node-> | ||
| + | printf(" | ||
| + | } | ||
| + | printf(" | ||
| + | } | ||
| + | osm_free_map(map); | ||
| + | return 0; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Occorre compilare con '' | ||
matematica/asd/asd_16/progetto_16.1487761763.txt.gz · Ultima modifica: 22/02/2017 alle 11:09 (9 anni fa) da Roberto Grossi
