fisica:informatica:201516:secondoanno:laboratorio_7
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 | ||
| fisica:informatica:201516:secondoanno:laboratorio_7 [14/04/2016 alle 12:58 (10 anni fa)] – Roberta Gori | fisica:informatica:201516:secondoanno:laboratorio_7 [14/04/2016 alle 13:25 (10 anni fa)] (versione attuale) – Roberta Gori | ||
|---|---|---|---|
| Linea 2: | Linea 2: | ||
| Nei seguenti esercizi sperimentare la compilazione separata scrivendo i prototipi delle funzioni in un file .h, la definizione della funzione in un file .c, e il main in un file .c separato. Seguire le istruzioni in {{: | Nei seguenti esercizi sperimentare la compilazione separata scrivendo i prototipi delle funzioni in un file .h, la definizione della funzione in un file .c, e il main in un file .c separato. Seguire le istruzioni in {{: | ||
| - | === Esercizio 1 === | + | Nel seguito, quando si dice "riceve un array" o qualcosa di equivalente, |
| - | Scrivere una funzione che riceve un parametro un char e | + | si intende *SEMPRE* che venga passata anche la lunghezza dell' |
| - | restituisce il carattere successivo. Scrivere quindi una funzione | + | parametro, anche se non viene esplicitamente detto. |
| - | main() per collaudare la funzione | + | Inoltre si richiede che, oltre alla funzione |
| - | + | scriviate anche un main che usi tale funzione | |
| + | funzionalita' | ||
| - | === Esercizio | + | Per ultimo, se con l' |
| + | funzione/ | ||
| + | scrivere, si richiede che la soluzione rispetti questa firma in ogni dettaglio | ||
| + | (nome | ||
| + | funzione, tipo di ritorno, lista di argomenti). | ||
| + | |||
| + | Ricordate che una procedura e' una funzione con tipo di ritorno void. | ||
| + | |||
| + | Infine in tutti gli esercizi che seguono siete invitati, quando e' opportuno, ad | ||
| + | applicare gli schemi di ricerca certa, incerta e verifica di una proprieta' | ||
| + | visti a lezione. | ||
| + | Per quanto riguarda l'uso dei booleani utilizzare | ||
| + | < | ||
| + | #DEFINE FALSE 0 | ||
| + | #DEFINE TRUE 1 | ||
| + | </ | ||
| + | come visto a lezione. | ||
| + | |||
| + | |||
| + | === Esercizio | ||
| Scrivere una funzione massimo comun divisore che realizza la funzione | Scrivere una funzione massimo comun divisore che realizza la funzione | ||
| del massimo comun divisore con uno degli algoritmi visti a lezione. | del massimo comun divisore con uno degli algoritmi visti a lezione. | ||
| Linea 16: | Linea 36: | ||
| implementata. | implementata. | ||
| - | === Esercizio | + | === Esercizio |
| Scrivere una procedura | Scrivere una procedura | ||
| dimensioni chieste all' | dimensioni chieste all' | ||
| Linea 30: | Linea 50: | ||
| per collaudare la procedura | per collaudare la procedura | ||
| implementata. | implementata. | ||
| - | 11) Scrivere una procedura | + | |
| - | riempimento scelto dall' | + | === Esercizio 3 === |
| - | Nota: accettare solo numeri dispari come altezza. | + | Scrivere una procedura |
| - | Esempio di interazione con il programma: | + | |
| - | Inserisci l' | + | |
| - | Inserisci | + | |
| - | Inserisci carattere esterno | + | === Esercizio 4 === |
| - | Inserisci il carattere di riempimento interno : @ | + | Dato un array di caratteri, scrivere una funzione che controlli |
| - | * | + | |
| - | *@* | + | |
| - | *@@@* | + | === Esercizio 5 === |
| - | | + | Scrivere una funzione che, ricevuto un array di interi, ritorni la somma di |
| - | *@@@@@@@* | + | tutti gli elementi e azzeri tutti gli elementi in posizione dispari. Fare attenzione all' |
| - | | + | |
| - | | + | |
| - | *@* | + | === Esercizio 6 === |
| - | * | + | Scrivere una funzione |
| - | Scrivere | + | posizione |
| - | main() | + | della prima occorrenza di un elemento pari nell' |
| - | per collaudare | + | |
| - | implementata. | + | |
| - | 12)Scrivere una procedura | + | === Esercizio 7 === |
| - | notazione romana: | + | Scrivere una procedura che ricevuto un array di interi, restituisca |
| - | I | + | posizione |
| - | II | + | della prima e dell' ultima occorrenza di un elemento pari nell' |
| - | III | + | < |
| - | IV | + | void primoultimo_pari(int arr[], int dim, int* primaocc, |
| - | V | + | </ |
| - | VI | + | |
| - | VII | + | |
| - | VIII | + | |
| - | IX | + | |
| - | X | + | |
| - | ... | + | === Esercizio 8 === |
| - | XCVIII | + | Scrivere una funzioni |
| - | XCIX | + | |
| - | C | + | === Esercizio 9 === |
| - | Attenzione alle eccezioni: 88=LXXXVIII ma 99=XCIX | + | Scrivere una procedura che ricevuto un array di caratteri modifichi il |
| - | Per informazioni sulla notazione romana | + | vettore |
| - | http:// | + | in modo che ogni vocale venga sostituita dal simbolo ' |
| - | Scrivere quindi una funzione | + | < |
| - | main() | + | void dollarize(char arr[], int dim); |
| - | che chiesto all' | + | </ |
| - | tra 1 e 100 stampi su un unica linea tutti i numeri romani tra 1 e m. | + | === Esercizio 10 === |
| + | | ||
| + | Non ci sono restrizioni di efficienza, potete usare un qualsiasi algoritmo di | ||
| + | ordinamento. | ||
fisica/informatica/201516/secondoanno/laboratorio_7.1460638689.txt.gz · Ultima modifica: 14/04/2016 alle 12:58 (10 anni fa) da Roberta Gori
