- Programmare in C++ (3 lezione) - |
|||
COSA SERVE PER QUESTO TUTORIAL | |||
Download | Chiedi sul FORUM | Glossario | Qualche conoscenza nell'ambito della programmazione semplice - conoscenze matematiche di base - un compilatore (Borland o Microsoft) - il codice sorgente della lezione. | ||
Operatori atti a modificare e comparare valori con il C++ | |||
GLI OPERATORI DI MODIFICA DI BASE I "simboli" matematici per comporre espressioni Come tutti i linguaggi di programmazione anche il C++ pone le sue basi su presupposti matematici, ecco quindi gli operatori di base (le doppie virgolette ovviamente non sono parte dei simboli):
Per chiarire la simbologia vediamo alcuni esempi rapidi: //Dichiariamo le nostre variabili int var_uno = 5; int var_due = 3; int var_tre = 6; //Facciamo qualche operazione cout << "La variabile 1 sommata alla 3: " << var_uno + var_due << "\n"; cout << "La v. 1 sottratta alla 3: " << var_tre - var_uno << "\n"; cout << "La v. 1 moltiplicata per la 2: " << var_uno * var_due << "\n"; cout << "La v. 1 divisa per la 2: " << var_uno / var_due << ", resto " << var_uno % var_due << "\n\n"; OPERATORI DI MODIFICA PIU' COMPLESSI Ecco di seguito gli operatori "avanzati" del C++ (dai quali ha preso il nome il linguaggio stesso):
Bisogna dire ora che se mettiamo "++" (o "--") prima di ciò che deve
essere incrementato (o diminuito) otterremo l'incremento prima di
un'eventuale valutazione della variabile mentre se decidiamo di mettere
l'operatore "++" (o "--") dopo ciò che deve essere elaborato otterremo prima la
valutazione e poi l'incremento (o la diminuzione). Gli operatori "++" e "--" trovano largo
impiego nei cicli e nelle iterazioni di cui parleremo più avanti. Per quanto riguarda ">>" e "<<" diciamo che per ora non sono parte
fondamentale della trattazione (accontentiamoci di sapere che esistono). //Usiamo "++", "--" e "=" int var_quattro = 1; int var_cinque = 1; //Il "++" prima la variabile cout << "La variabile var_quattro con ++ prima della variabile: " << ++var_quattro << "\n"; //Il "++" dopo la variabile cout << "La variabile var_cinque con ++ dopo la variabile: " << var_cinque++ << "\n"; cout << "La variabile var_cinque dopo essere stata stampata: " << var_cinque << "\n\n";Eseguendo questo codice si avrà come risultato var_quattro uguale a 2 e var_cinque prima uguale a 1, poi uguale a 2. GLI OPERATORI DI
COMPARAZIONE A questo punto, dato che abbiamo passato in rassegna i più importanti operatori in grado di modificare le variabili, rivolgiamo la nostra attenzione verso la simbologia matematica che ci permette di compararne i valori. Immaginiamo di avere due espressioni (A e B):
Ciascuno di questi segni restituisce in sostanza un valore booleano:
o vero o falso, o "0" o "1" (0 falso se la relazione non è verificata,
1 vero se la relazione è veritiera). Questi nuovi operatori ci
torneranno utili quando dovremo verificare determinate condizioni per
poi generarne altre (ma di questo avremo modo di parlare più
approfonditamente in seguito). //Alcune comparazioni con relativo valore true o false cout << "LEGENDA\n1 espressione vera\n0 espressione falsa\n\n"; cout << "1 == 1: " << (int)(1 == 1) << "\n"; cout << "1 != 1: " << (int)(1 != 1) << "\n"; cout << "1 > 1: " << (int)(1 > 1) << "\n"; cout << "1 <= 1: " << (int)(1 <= 1) << "\n"; cout << "1 + 1 == 2 && 1 - 1 == 2: " << (int)(1 + 1 == 2 && 1 - 1 == 2) << "\n"; cout << "1 + 1 == 2 || 1 - 1 == 2: " << (int)(1 + 1 == 2 || 1 - 1 == 2) << "\n"; GLI ASSEGNAMENTI VELOCI O "ABBREVIATI"
Ecco invece quelli più complicati (e per ora di facoltativa comprensione):
GLI OPERATORI SUI BIT Elenchiamo per completezza gli operatori sui bit (anche se ad un programmatore principiante in realtà non serviranno a molto):
LE PRECEDENZE NELLE OPERAZIONI DI CALCOLO Rivolgiamo infine la nostra attenzione sull'ordine in cui gli operatori studiati in questo documento verranno eseguiti (il n°1 sarà il primo "calcolo" ad essere portato a termine):
//Esempi di precedenze nelle operazioni di calcolo int var_sei = 3; int var_sette = 8; int var_otto; //Esempio "()" cout << "(var_sette - var_sei) * var_sette = " << (var_sette - var_sei) * var_sette << "\n"; //Esempio di "?:" (bassa precedenza): //se var_sette è strettamente maggiore di var_otto allora var_otto diventerà uguale a var_otto + 12 var_otto = (var_sette > var_otto) ? var_otto + 12 : var_otto; cout << "L'esempio con ?: restituisce " << var_otto << "\n"; //Esempio "%" var_otto = (var_sei + var_sette) % var_sei; cout << "L'esempio con % restituisce " << var_otto;N.B. - L'istruzione "?:" verrà chiarificata nelle lezioni successive, per ora basta averne un'idea. |
|||
<< INDIETRO | by aFiGoZ |