informatica:sol:laboratorio17:esercitazionib:esercitazione3
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
informatica:sol:laboratorio17:esercitazionib:esercitazione3 [05/03/2017 alle 09:04 (8 anni fa)] – Massimo Torquati | informatica:sol:laboratorio17:esercitazionib:esercitazione3 [06/03/2017 alle 10:34 (8 anni fa)] (versione attuale) – [Esercizio 3: somma da] Massimo Torquati | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
====== Esercitazione 3 ====== | ====== Esercitazione 3 ====== | ||
- | ===== Esercizio 1 ===== | + | ===== Esercizio 1: macro1 |
Scrivere una funzione macro ' | Scrivere una funzione macro ' | ||
< | < | ||
Linea 16: | Linea 16: | ||
Stampare il valore di ritorno di un programma che testa la macro ' | Stampare il valore di ritorno di un programma che testa la macro ' | ||
- | ===== Esercizio 2 ===== | + | ===== Esercizio 2: macro2 |
Dato il seguente codice main C: | Dato il seguente codice main C: | ||
< | < | ||
Linea 41: | Linea 41: | ||
</ | </ | ||
- | ===== Esercizio 3: matdump ===== | + | ===== Esercizio 3: somma da ===== |
- | + | ||
- | Scrivere un programma che prende in ingresso un intero (piccolo, es. < | + | |
- | Inizializzare tale matrice (M1) in modo arbitrario (ad esempio M1(i,j) = (i+j)/2.0). | + | |
- | Fare quindi il dump della matrice in formato binario su un file il cui nome è ' | + | |
- | Rileggere quindi la matrice dal file ' | + | |
- | da quella di partenza (chiamata M2). Al termine dell' | + | |
- | + | ||
- | ===== Esercizio 4: somma da ===== | + | |
Scrivere un programma C che implementa una funzione somma con la seguente segnatura: | Scrivere un programma C che implementa una funzione somma con la seguente segnatura: | ||
Linea 56: | Linea 48: | ||
</ | </ | ||
- | La funzione ' | + | La funzione ' |
Il valore iniziale della somma deve essere INIT_VALUE che viene definito a compilazione utilizzando il flag del compilatore '' | Il valore iniziale della somma deve essere INIT_VALUE che viene definito a compilazione utilizzando il flag del compilatore '' | ||
- | Dare anche una implementazione | + | Valutare se la funzione somma cosi' come definita e' rientrante ed eventualmente fornire |
+ | |||
+ | ===== Esercizio 4: Makefile minimale ===== | ||
+ | |||
+ | Scrivere un '' | ||
+ | |||
+ | ===== Esercizio 5: matdump ===== | ||
+ | |||
+ | Scrivere un programma che prende in ingresso un intero (piccolo, es. < | ||
+ | Inizializzare tale matrice (M1) in modo arbitrario (ad esempio M1(i,j) = (i+j)/2.0). | ||
+ | Fare quindi il dump della matrice sia in formato binario che in formato testuale su un file il cui nome è 'mat_dump.dat' | ||
+ | Rileggere quindi la matrice dal file ' | ||
+ | da quella di partenza | ||
+ | |||
+ | ===== ULTERIORI ESERCIZI DA FARE COME HOMEWORK ==== | ||
- | ===== Esercizio | + | ===== Esercizio |
- | Scrivere un programma che realizzi l' | + | Scrivere un programma che implementa una versione semplificata |
- | limitatamente alle opzioni -l e -w (man 1 wc). Usare '' | + | limitatamente alle opzioni -l e -w ('' |
Se non vengono passate opzioni, il programma stampa sia il numero | Se non vengono passate opzioni, il programma stampa sia il numero | ||
di linee che il numero di parole del/dei file i cui nomi sono passati come argomento | di linee che il numero di parole del/dei file i cui nomi sono passati come argomento | ||
Linea 70: | Linea 76: | ||
- | ===== Esercizio | + | ===== Esercizio |
Scrivere un programma C che dato un file testuale come argomento, inserisca tutte le parole del file in una lista ordinando le parole alfabeticamente. Ogni linea del file testuale puo' contenere piu' parole. Implementare la seguente interfaccia: | Scrivere un programma C che dato un file testuale come argomento, inserisca tutte le parole del file in una lista ordinando le parole alfabeticamente. Ogni linea del file testuale puo' contenere piu' parole. Implementare la seguente interfaccia: | ||
Linea 80: | Linea 86: | ||
</ | </ | ||
- | Fornire i metodi di creazione e gestione della lista in una libreria statica (libList.a). | + | Fornire i metodi di creazione e gestione della lista in una libreria statica (libList.a). Scrivere il Makefile per creare la libreria e generare l' |
informatica/sol/laboratorio17/esercitazionib/esercitazione3.1488704657.txt.gz · Ultima modifica: 05/03/2017 alle 09:04 (8 anni fa) da Massimo Torquati