Anteprima
Vedrai una selezione di 21 pagine su 98
Appunti di Informatica A Pag. 1 Appunti di Informatica A Pag. 2
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 6
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 11
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 16
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 21
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 26
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 31
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 36
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 41
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 46
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 51
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 56
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 61
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 66
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 71
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 76
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 81
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 86
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 91
Anteprima di 21 pagg. su 98.
Scarica il documento per vederlo tutto.
Appunti di Informatica A Pag. 96
1 su 98
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

C.

#define

Un’altra direttiva molto utile è:

#define nome_costante valore_costante

Questa direttiva ha lo scopo di definire una costante attraverso il suo nome ed il suo valore. Ogni volta che

il compilatore troverà il nome della costante nel programma, lo sostituirà con il codice relativo al suo

valore. L’utilizzo delle costanti è fondamentale in un programma in quanto consente di istituire un valore

che non cambierà mai nel programma, nemmeno per errore.

main

int main(void)

{

}

La funzione main comunica al compilatore dove inizia il vero e proprio programma da eseguire. In

particolare, l’inizio e la fine del programma sono comunicate attraverso parentesi graffe.

Variabile

Una variabile è un’entità corrispondente ad una cella di memoria di una certa dimensione (8, 16, 32, ... bit),

e contenente un certo tipo di dato, definito durante la definizione della variabile.

Dichiarazione di variabile

In C, una variabile si dichiara in questo modo:

tipo nome_variabile;

dove il nome della variabile può essere scritto utilizzando lettere maiuscole o minuscole, numeri (anche se

non può iniziare con un numero) o underscore (“_”). Il linguaggio distingue le lettere maiuscole dalle

minuscole in un nome.

Dichiarare una variabile significa, letteralmente, comunicare alla memoria del calcolatore che deve

riservare un certo numero di bit per quella particolare variabile.

Tipo di variabile

C è un linguaggio staticamente tipizzato. Ciò significa che ogni variabile deve essere definita con un tipo,

che indica la tipologia di dato che essa contiene e le relative proprietà. Questi sono i tipi di variabile:

tipo Dato dimensione

char valore numerico associato ad un 8 bit (1 codice binario ASCII)

codice ASCII di un carattere

int numero intero C 32 bit (1 numero binario intero)

2

float numero reale in virgola mobile 32 bit (1 S, 8 E, 23 M)

double numero reale in virgola mobile a 64 bit

doppia precisione

Qualificatori

In aggiunta, le variabili possono presentare dei qualificatori, che associano alle variabili delle qualità:

qualificatore significato

short Indica che la variabile deve essere rappresentata in

uno spazio di memoria dimezzato rispetto allo

standard.

long Indica che la variabile deve essere rappresentata in

uno spazio di memoria doppio rispetto allo

standard.

unsigned Indica che la variabile deve essere considerata

come un numero naturale, non in complemento a

due.

Assegnamento di variabile

L’assegnamento di una variabile, cioè la sua associazione ad un valore caratteristico del tipo di variabile,

avviene in questo modo:

tipo nome_variabile = valore;

Altri elementi essenziali

Commento

Il doppio slash o lo slash – asterisco definiscono l’inserimento di un commento utile alla comprensione del

programma, ma che il compilatore non deve interpretare come parte di esso.

// commento

/* commento */

Strutture di controllo

Le strutture di controllo sono insiemi di istruzioni che permettono di eseguire operazioni in relazione ad

alcune condizioni. Sono estremamente necessarie per la costruzione di un programma complesso.

if

La struttura condizionale if è utilizzata in questo modo:

10. viene verificata la condizione dell’istruzione if:

o se essa risulta vera (ha valore 1), vengono eseguite le istruzioni immediatamente

successive;

o se essa risulta falsa (ha valore 0):

 viene saltato il blocco “if” e vengono eseguite le operazioni successive;

 vengono eseguite le istruzioni successive all’operatore else.

Sintassi

if (condizione){

istruzioni_1;

} else {

istruzioni_2;

}

switch switch

La struttura condizionale è utilizzata in questo modo:

11. viene letto il valore del parametro inserito fra parentesi tonde (può essere un valore numerico o di

carattere). case

12. viene verificata l’uguaglianza fra il valore del parametro e il valore dei vari all’interno della

struttura condizionale:

o case.

se l’uguaglianza è vera, vengono eseguite le istruzioni associate al relativo

o se l’uguaglianza è falsa, si procede a verificare le uguaglianze successive.

break, switch.

13. se si trova un’istruzione il ciclo viene interrotto e si esce dalla struttura

14. se il valore del parametro non uguaglia alcun valore dei case, viene eseguita una serie di operazioni

default di trattamento dell’errore.

Sintassi

switch (parametro) {

case a:

istruzioni_a;

break;

case b:

istruzioni_b;

break;

default:

istruzioni_gestione_errore;

}

Cicli

Un ciclo, o iterazione, è una struttura di programmazione utile a ripetere una serie di istruzioni.

while

Il ciclo while serve a ripetere una serie di operazioni fintanto che una condizione viene rispettata, dunque

un numero indefinito di volte.

Una qualunque funzione computabile può essere descritta attraverso la sequenza di operazione, la

struttura if ed il ciclo while. L’utilizzo di altre funzioni, procedure e cicli è dunque utile a semplificare la

scrittura del programma, seppure non necessario.

Sintassi

Il ciclo while è utilizzato in questo modo:

15. condizione: il calcolatore valuta una condizione, espressa tra parentesi:

o se la condizione è vera, il calcolatore esegue la serie di istruzioni presenti fra le parentesi

graffe, e ritorna alla verifica della condizione.

o se la condizione è falsa, il calcolatore esegue la serie di istruzioni presenti oltre la parentesi

graffa di chiusura (queste istruzioni sono necessarie affinché il calcolatore non si trovi in un

loop continuo).

while (condizione) {

istruzioni_vero_da_ripetere

}

istruzioni_falso

Esempio

Questo è l’esempio di un ciclo while per eseguire il fattoriale di un numero “n”:

while (n > 1) {

fattoriale = fattoriale*n

n = n – 1

}

do while

Il ciclo do while serve ad eseguire una serie di operazioni, e successivamente a verificare una condizione per

stabilire se ripetere il ciclo o meno.

Sintassi

Il ciclo do while è utilizzato in questo modo:

16. do: il calcolatore esegue (do) per prima cosa le istruzioni presenti fra le parentesi graffe, senza

verificare alcuna condizione;

17. condizione: una volta esaurite le istruzioni, il calcolatore verifica la condizione espressa da while al

termine del ciclo:

o se essa è vera, ritorna al do iniziale;

o se essa è falsa, prosegue con le istruzioni successive.

do { istruzioni_da_ripetere

}while (condizione)

Esempio

Questo è l’esempio di un ciclo do while per eseguire un fattoriale di un numero “n”:

do {

fattoriale = fattoriale*n

n = n – 1

} while (n > 1)

for

Il ciclo for serve a ripetere una serie di operazioni un numero predefinito di volte.

Sintassi

Il ciclo for è utilizzato in questo modo:

18. inizializzazione: al calcolatore viene data un’istruzione (potrebbe esser una qualsiasi) che deve

eseguire prima di procedere al ciclo.

Nel caso di for, al calcolatore viene comunicato il valore di partenza della variabile utilizzata;

19. condizione: al calcolatore viene comunicato l’ultimo valore che la variabile deve assumere,

attraverso una disuguaglianza;

20. operazione: al calcolatore viene comunicata l’operazione algebrica da svolgere ad ogni ciclo per

modificare il valore della variabile dal valore iniziale a quello finale.

for (inizializzazione; condizione; operazione) {

istruzioni

}

Esempio

Questo è l’esempio di un ciclo for per eseguire un fattoriale di un numero “n”.

for (i = n; n > 1; --i) {

fattoriale = fattoriale*i

}

Si noti che “--i” è una abbreviazione per “i – 1”.

Contatore

Il contatore è un elemento fondamentale di un ciclo, e viene usato spesso.

Il contatore è una variabile che, ad ogni ciclo, viene modificata (incrementata, diminuita) di un certo

valore (di solito 1), in modo da conteggiare il numero di volte per cui il ciclo è stato ripetuto, oppure per

assegnare alla variabile valori diversi ad ogni ciclo.

Errori comuni

Spesso la programmazione comporta alcuni errori, che vengono comunicati dal compilatore attraverso un

messaggio di errore, e comportano l’interruzione del programma. Il processo di eliminazione graduale di

tutti gli errori di un programma è detto debugging.

Errore compile time

L’errore compile time si genera quando le regole grammaticali del linguaggio C vengono violate, e fa sì che

il compilatore blocchi la compilazione del programma, impedendone l’esecuzione.

Errore run time

L’errore run time si genera quando il programma compilato porta il calcolatore a compiere operazioni

impossibili (come la divisione per zero), e può essere notato solo mentre il programma è in esecuzione.

L’errore run time provoca l’arresto forzato del programma.

Sottoprogrammi

Un sottoprogramma è un programma già inventato, compilato e testato da altri programmatori, che può

essere riutilizzato nella programmazione. I sottoprogrammi sono essenziali alla programmazione

complessa, per varie ragioni:

21. forniscono istruzioni per risolvere problemi complessi, sintetizzandole in operazioni semplici

preimpostate

22. sono sicuramente privi di errore, in quanto già testati

I sottoprogrammi si suddividono essenzialmente in due categorie: procedure e funzioni.

Procedure

Una procedura è un sottoprogramma che prevede solo input, senza alcun output, ovvero che non ritorna

all’utente alcune risultato.

printf

La procedura printf ha lo scopo di mostrare un valore di una variabile nel programma.

printf(“testo”, variabile);

L’argomento contiene:

23. un testo, racchiuso fra le virgolette

24. una o più variabili da mostrare, scritte dopo la virgola

Placeholder

Nel testo della procedura può comparire un placeholder, ovvero un carattere che ha lo scopo di fare

riferimento ad un certo tipo di variabile. Il segnaposto mostra dove verrà posizionata la variabile nella

stringa del programma.

Esistono vari tipi di placeholder, ognuno assegnato ad un tipo di variabile:

placeholder tipo di variabile funzione compatibile

%c char printf/scanf

%d int printf/scanf

%f double printf

%lf double scanf

/n

Nel testo della procedura può comparire anche il simbolo:

/n

che comunica al calcolatore di andare a capo nel far comparire la successiva stringa di programma.

scanf

La procedura scanf ha lo scopo di assegnare ad una variabile un valore scelto dall’utente, e “comunicato”

attraverso un input di tastiera.

scan

Dettagli
A.A. 2015-2016
98 pagine
SSD Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher mrtambourine91 di informazioni apprese con la frequenza delle lezioni di Informatica A e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Milano o del prof Fuggetta Alfonso.