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 (8 anni fa)] – creata Roberto Grossi | matematica:asd:asd_16:progetto_16 [03/07/2017 alle 14:11 (8 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 (8 anni fa) da Roberto Grossi