Indice
1 AMBIENTI DI SVILUPPO ... 3
2 ESERCIZIO 1 ... 6
3 ESERCIZIO 2 ... 8
4 ESERCIZIO 3 ...11
5 ESERCIZIO 4 ...13
BIBLIOGRAFIA ...15
1 Ambienti di sviluppo
Per gli esercizi, come anticipato in altra unità didattica, si fa riferimento a due ambienti, il primo su cloud ed il secondo sul proprio PC.
Ambiente su cloud
L’ambiente su cloud https://www.onlinegdb.com/ è un ambiente completamente fruibile su cloud. In Figura 1 una videata.
Figura 1: l'ambiente onlineGDB.
Si ha la possibilità di:
– Condivisione progetti
– Esecuzione on line
– Salvataggio su cloud
– Dialogare via Social
• Google +
• Approfondire i concetti con il corso on line di potenziamento
Si consiglia, al fine di massimizzare i benefici:
– Iscriversi alla community
– Effettuare sempre il login
– Creare un proprio archivio
– Condividere l’archivio anche con il prof (per eventuali correzioni)
Esiste anche la possibilità di integrare il corso erogato attraverso approfondimenti e soprattutto con un corso on line di potenziamento con i seguenti vantaggi:
– Molti esercizi verranno presi da questo ambiente
– Potranno essere provati subito on line o sul proprio PC
Figura 2: La pagina del tutorial.ù Code::Blocks
La piattaforma stand-alone gira su Windows e MAC. Richiede il download dal sito del programma, non richiede il collegamento a internet per far girare i programmi. Il suggerimento è che per programmi complessi è meglio utilizzare questo ambiente per avere un controllo diretto del sistema. Vediamo adesso alcuni esercizi pratici.
2 Esercizio 1
Problema: Scrivere un programma C che prende un numero intero da tastiera e lo visualizza sullo schermo.
• INPUT: Numero intero n
• OUTPUT: Visualizzazione intero n su video
• PRECONDIZIONI: n intero
In Figura 3 il codice sorgente del programma.
Figura 3: codice sorgente del programma.
Vediamo adesso in dettaglio le singole istruzioni del programma:
• #include <stdio.h> : Direttiva per il preprocessore per caricare il file stdio.h contenente le definizioni per utilizzare la libreria di I/O
• int main(): Blocco main del programma
• {: Inizio blocco
• int num; Dichiarazione variabile intera
• printf("Enter an integer number:"); Visualizza messaggio a video
• scanf("%d", &num); Lettura numero allocato alla variabile num
• printf("Entered number is %d", num); Visualizza il valore del numero letto
• return 0; Fine programma
• } Fine blocco main
In Figura 4 il running del programma.
Figura 4: running del programma.
3 Esercizio 2
Dati due numeri interi letti da tastiera, visualizzare la loro somma su schermo.
• INPUT: Due numeri interi n ed m
• OUTPUT: la somma n+m su schermo
• PRECONDIZIONI: n ed m interi
In Figura 5 il listato del programma con evidenziate le differenti zone di input, elaborazione ed output, oltre alla zona delle dichiarazioni di variabili.
Figura 5: listato del programma della somma tra due interi.
Figura 6: running del programma.
In Figura 7 è riportato il sorgente in ambiente IDE code::blocks. Come si può notare, l’IDE consente un controllo del sistema.
Figura 7: gestione del programma in ambiente code::blocks.
Figura 8: running del programma in ambiente PC.
• Nella Figura 8 la finestra di running del programma
4 Esercizio 3
Dati tre numeri interi letti da tastiera, fornire in output la media aritmetica media=(n1+n2+n3)/3
• INPUT: int n1,n2,n3
• OUTPUT:Media aritmetica
• PRECONDIZIONI: n1,n2,n3 interi
In Figura 9 il listato del programma in ambiente cloud con le zone input, elaborazione e output separate.
Figura 9:listato del programma.
Figura 10: running del programma.
In Figura 10 il running del programma. E’ importante notare come la media sia rappresentata da un numero con la virgola mentre i valori in ingresso sono numeri interi
5 Esercizio 4
Dato un numero intero immesso da tastiera, verificare se è un numero pari o dispari (zero pari)
• INPUT: Numero intero n
• OUTPUT: n Pari o dispari
• PRECONDIZIONI: n intero
Figura 11: listato pari e dispari.
Figura 12: running del programma.
• Questo programma illustra il significato dell’operatore modulo, operatore molto importante, come si vedrà in altre UDA, per calcoli specifici.
Bibliografia
• Brian,W. Kernigham and Dennis,E. Ritchie (2004). Il linguaggio C. Principi di programmazione e manuale di riferimento. Nuova Edizione Italiana. Prentice-Hall.
• Paul J. Deitel , Harvey M. Deitel. (2016). Il linguaggio C. Fondamenti e tecniche di programmazione. Ediz. mylab. Con espansione online. Pearson Editore.
• Alessandro Bellini, Andrea Guidi. (2013). Linguaggio C. McGraw-Hill. Quinta Edizione
• https://www.programiz.com/c-programming/list-all-keywords-c-language