Stefano Petrarca
Conservatorio S. Cecilia - Roma
Programmazione: operatori aritmetici/logici e costanti
Operatori aritmetici del C/C++
Simbolo | Significato | Esempio |
+ | Somma | a = a + b assegna alla variabile a la somma fra i contenuti (numerici) delle variabili a e b |
- | Differenza | a = a - b assegna ad a la differenza fra a e b |
* | Moltiplicazione | a = a * b assegna ad a il prodotto a e b |
/ | Divisione | a = a / b assegna ad a il quoziente fra a e b |
% | Operatore modulo | a = a % b assegna ad a il resto della divisione fra a e b |
>> | Operatore shift a destra | a=a>>b assegna ad a il risultato della divisione intera fra a e 2b |
<< | Operatore shift a sinistra | a = a<<b assegna ad a il risultato del prodotto fra a e 2b |
Operatori logici bitwise
Simbolo | Significato | Esempio |
& | AND | Se la variabile a contiene 137 (10001010 in binario) allora a = a & 15 (1111 in binario) assegnerà ad a il valore 10 (1010 in binario) |
| | OR | Se la variabile a contiene 65 (1000001 in binario) allora a = a | 32 (100000 in binario) assegnerà ad a il valore 97 (1100001 in binario) |
^ | XOR | Se la variabile a contiene 65 (1000001 in binario) allora a = a ^ 33 (100001 in binario) assegnerà ad a il valore 96 (1100000 in binario) |
~ | NOT | Se la variabile a contiene 65 (01000001 in binario) allora a = ~ a assegnerà ad a il valore 190 (10111110 in binario) |
Simbolo | Significato | Esempio |
== | Uguale a | if(a==b) x=0; la variabile x viene azzerata se a contiene lo stesso valore di b |
> | Maggiore di | if(a>b) x=0; x viene azzerata se a contiene un valore maggiore di b |
< | Minore di | if(a<b) x=0; x viene azzerata se a contiene un valore minore di b |
>= | Maggiore o uguale | if(a>=b) x=0; x viene azzerata se a contiene un valore non minore di b |
<= | Minore o uguale | if(a<=b) x=0; x viene azzerata se a contiene un valore non maggiore di b |
! | Not | if(!a) x=0; x viene azzerata se a contiene un valore nullo (cioè falso) |
!= | Diverso | if(a!=b) x=0; la variabile x viene azzerata se il contenuto di a è diverso da b |
&& | And | if((a!=b)&&(a!=c)) x=0; la variabile x viene azzerata se il contenuto di a è diverso sia da b che da c |
|| | Or | if((a==b)||(a==c)) x=0; la variabile x viene azzerata se il contenuto di a è uguale a b oppure se è uguale a c |
Programmazione: sottoprogrammi e funzioni
Un sottoprogramma è un gruppo di istruzioni eseguibile da un programma chiamante
Una funzione è un sottoprogramma che restituisce un valore al chiamante
In C / C++ esistono solo funzioni
Un esempio di funzione (anche se particolare) è main( ) e il suo programma chiamante è il sistema operativo
Un altro esempio di funzione è printf( ); tutte le funzioni come printf sono dette funzioni di libreria e sono fornite dal produttore del compilatore
Il chiamante può passare dei valori alla funzione; questi valori, detti argomenti, sono elencati nella parentesi che segue il nome della funzione; ad es., printf("%d",a);
Un esempio di funzione creata dal programmatore e suo uso:
Definizione della funzione | Chiamata della funzione |
|
Esercizi
- Creare una funzione C per l'elevamento a potenza dati base ed esponente
- Creare un programma chiamante per la funzione sviluppata precedentemente
- Creare una funzione per il calcolo del fattoriale di un numero e il suo programma chiamante
- Algoritmo e programma per la trasformazione di un numero decimale in binario
- Algoritmo e funzione per realizzare il bit-reverse di un numero (binario)
Pagina iniziale ________________ Matematica ________________ Programma ________________ Bibliografia