• Non ci sono risultati.

Corsi di laurea in Ingegnera Elettronica e Ingegneria Gestionale Fondamenti di Informatica I / Fondamenti di Programmazione Prova scritta del 26 febbraio 2013

N/A
N/A
Protected

Academic year: 2021

Condividi "Corsi di laurea in Ingegnera Elettronica e Ingegneria Gestionale Fondamenti di Informatica I / Fondamenti di Programmazione Prova scritta del 26 febbraio 2013"

Copied!
1
0
0

Testo completo

(1)

Corsi di laurea in Ingegnera Elettronica e Ingegneria Gestionale Fondamenti di Informatica I / Fondamenti di Programmazione

Prova scritta del 26 febbraio 2013

Esercizio 1 (15 punti)

Una matrice di interi di dimensione n

×

n (con n ≤ 500) rappresenta l'altitudine in metri di una zona di terreno. Si definisce altopiano di estensione k una regione di dimensione k

×

k tale che la differenza tra l'altitudine minima e massima della regione non sia superiore a 30 metri.

Si scriva una funzione che riceva come parametri una matrice come descritta, la sua dimensione n ed un intero positivo k. Se nella matrice esiste un altopiano di estensione minima k la funzione deve restituire in un’apposita struttura le coordinate del vertice in alto a sinistra dell’altopiano; se nella matrice non esiste un altopiano della estensione minima cercata, la funzione deve restituire le coordinate {-1, -1 }.

Come esempio si consideri la matrice a lato (con n = 10).

In tale matrice esiste un altopiano di dimensione k = 3 (evidenziato in figura, di coordinate { 3, 2 } ), ma non esiste alcun altopiano di dimensione k = 4.

Esercizio 2 (15 punti)

Un file contiene le misurazioni di una rete di stazioni meterologiche. Ogni riga del file si riferisce ad una misurazione di una stazione e contiene le informazioni codice della stazione, data, ora, temperatura, precipitazioni nel formato CSV (Comma Separated Values) cioè dati racchiusi tra doppi apici e separati tra loro da virgole. Il file non contiene spazi bianchi. I dettagli del formato si evincono dall’esempio seguente:

"K23","21/1/2013","21:12","-4.2","0"

"F9","22/1/2013","13:28","12.0","4"

"S95","22/1/2013","03:05","-15.5","25"

Un vettore di strutture, definito come riportato a lato, contiene le informazioni relative a ciascuna stazione.

Si scriva una funzione che riceva come argomenti un puntatore ad un file come quello descritto sopra, il vettore di strutture di tipo

struct stazione, un intero contenente la

dimensione di tale vettore, un intero rappresentante un anno a e una stringa contenente la sigla di una provincia p.

La funzione deve restituire la temperatura media delle misurazioni effettuate nell’anno a da tutte le stazioni della provincia p.

510 576 586 595 523 576 586 565 567 551 500 595 528 561 585 574 582 510 502 555 519 553 582 510 513 518 515 541 510 544 527 587 521 525 538 508 554 532 573 520 549 540 546 539 518 566 550 548 542 519 502 527 526 528 527 513 571 598 520 547 507 513 534 593 593 581 501 512 580 540 600 528 580 581 572 547 546 588 595 588 506 564 514 545 516 596 524 554 559 511 500 566 524 500 559 583 548 526 562 527

struct stazione {

char codice[16];

char luogo[32];

char provincia[3];

int quota;

};

struct stazione tabella_stazioni[NMAX_STAZIONI] = { { "F9", "Lignano", "UD", 3 },

{ "K23", "Ligosullo", "UD", 949 }, { "S95", "Albugnano", "AT", 550 }, ... };

Riferimenti

Documenti correlati

Si scriva una funzione in linguaggio C che riceva come argomenti un vettore di stringhe, contenenti ciascuna il nome di un file del tipo sopra descritto, e un

Si scriva una funzione che riceva come argomenti il nome del file di equivalenze sopra descritto, il nome di un file di grandezze (con i punti interrogativi) e il nome di un file

Si scriva una funzione in linguaggio C che riceva come argomenti il puntatore a un file di testo nel formato sopra descritto (il file è quindi già stato aperto dalla funzione

Al termine dell’esecuzione delle operazioni specificate nel file di ingresso il programma dovrà stampare i valori contenuti in tutte e sole le celle di memoria che

Si scriva un programma in linguaggio C che riceva sulla riga di comando il nome di due file come quelli sopra descritti e stampi il numero delle repliche

Poiché gli identificatori (numeri) delle tessere sono univoci e nella griglia è presente una sola posizione vuota, ogni mossa può semplicemente essere indicata

Per fare questo, si scriva un programma in linguaggio C che riceva sulla riga di comando il nome di un file come sopra descritto e stampi l’elenco dei

Successivamente, per ogni cifra del tentativo non ancora utilizzata si cerca lo stesso valore tra le cifre non ancora utilizzate del numero segreto e, se lo si trova,