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 (9 anni fa)] – Roberta Gori | fisica:informatica:201516:secondoanno:laboratorio_7 [14/04/2016 alle 13:25 (9 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 (9 anni fa) da Roberta Gori