Stefan Ghinea.it | English versionEnglish version | e-mail

  • Cerca nel sito
   myway con Google:
   
   Web Ghinea.it
   
  • Socialnetwork
Web Agency Prato:
Creazione Siti, Indicizzazione, Ottimizzazione
 
  facebook  twitter  youtube 
 
  • ContattamiSkype
Web Agency Prato:
richiesta informazioni
 
My status
Contattami

Lezioni C# – Operatori

Gli operatori sono utilizzati per manipolare le informazioni all’interno di una espressione.

Una espressione è un insieme di elementi del linguaggio combinati tra loro (variabili, operatori, ecc.) per eseguire un determinato calcolo. Delle variabili abbiamo già parlato nelle lezioni precedenti, ora tocca agli operatori.

I primi tre operatori che analizzeremo sono: UNARI, BINARI e TERNARI. Gli operatori UNARI influenzano un singolo valore o variabile (operando) e comprendono i segni:

Operatori C#
Operatore Descrizione
+ somma
- differenza
++ incremento
decremento
! negazione logica
~ complemento a bit

Esempi di uso di operatori:


int num1= 125; // 125 è un numero positivo, avrei potuto scrivere +125
int num2= -12; // con l’operatore – ho espressamente dichiarato che num2 è un numero negativo
num1++; // con l’operatore di incremento ++, ho incrementato la variabile di una unità, num1 ora vale 126
num1–; // con l’operatore di decremento –, ho decrementato la variabile di una unità, num1 ora vale 125
bool vero=true; // ho dichiarato una variabile booleana a cui ho assegnato il valore true
bool falso=!vero; // il complemento ! della variabile booleana vero è false

L’operatore ~ di complemento a bit, inverte la rappresentazione binaria di un valore cioè tutti i bit a 1 si trasformano in 0 e i bit a 0 si trasformano in 1. Gli operatori binari sono quegli operatori che funzionano con due operandi. Per esempio, una espressione binaria potrebbe essere la seguente:
somma=num1+num2;
essa fa uso dell’operatore di addizione che opera su due operandi, num1 e num2. Gli operatori binari si dividono ulteriormente in aritmetici, relazionali, logici e di assegnamento.
Gli operatori ternari sono gli operatori più complessi e fanno uso di tre variabili. Il C# comprende un solo operatore ternario, l’operatore condizionale. Ha la seguente sintassi:
var = condizione ? istruzione1 : istruzione2;
in base al risultato (true o false) del test eseguito dalla condizione, verrà assegnato alla variabile var il risultato dell’istruzione1 (true) oppure dell’istruzione2 (false). Quest’ultimo tipo di operatore lo descriveremo con maggiore dettaglio quando studieremo le istruzioni condizionali.

Operatori aritmetici.
Durante la scrittura di un programma, gli operatori aritmetici sono gli operatori più usati. Gli operatori aritmetici di C#, sono quelli che fanno parte della stragrande maggioranza dei linguaggi di programmazione moderni. Questi sono:

Operatori C#
Operatore Descrizione
+ addizione
- sottrazione
* moltiplicazione
/ divisione
% resto intero


c=a+b;
c=b-a;
c=a*b;
c=a/b;
c=a%b;

Di questi operatori ne faremo largo uso ma c’è una tipologia di operatori, se vogliamo un po’ strani, che sono gli operatori aritmetici composti .

Questo tipo di operatori composti, ci consentono di scrivere velocemente una operazione aritmetica che riguarda l’aggiunta di un valore ad una variabile. Per esempio se volete incrementare il valore della variabile x di 3 unità, potete scrivere x=x+3; . Però ora potete anche usare l’operatore composto += in questo modo: x+=3; che esegue la medesima operazione. Tutti gli operatori aritmetici visti prima, possono essere usati per effettuare una operazione composta.

Nel listato seguente compare una piccola novità. L’istruzione della riga 7 effettua due operazioni in un colpo solo: dichiarazione della variabile e sua assegnazione. Per il resto sarete certo in grado analizzarlo. Quindi non vi resta che copiarlo ed eseguirlo.

Codice sorgente Opera.cs


using System;
class opera
{
static void Main(string[] args)
{
// dichiaro una variabile byte con assegnazione diretta
byte num1=20;
// stampo il suo valore
Console.WriteLine(“\nLa variabile num1 contiene {0}”,num1);
// incremento di 5 il suo contenuto
num1+=5;
// stampo il suo nuovo valore
Console.WriteLine(“La variabile num1 adesso contiene {0}”,num1);
Console.ReadLine();
}
}

Operatori aritmetici unari.
Gli operatori di cui si è parlato, erano fondamentalmente di tipo binario. In C# (come anche in Java) esistono due tipi di operatori aritmetici particolari di tipo unario cioè agiscono su un solo valore. Sono l’operatore di incremento ++ e di decremento — . Per esempio l’istruzione
++x;
incrementa la variabile x di una unità (viene chiamato operatore prefisso). Avremmo potuto scrivere tranquillamente x=x+1; ma l’operatore unario ++x; , come si vede, è più pratico e veloce. Ovviamente all’operatore di incremento si oppone quello di decremento, –x; .

Possono essere usati anche facendo seguire il segno dell’operazione alla variabile, per esempio x++; (viene chiamato operatore postfisso). Però qui le cose cambiano.

Facciamo un esempio. L’istruzione y=++x; con x=10, assegnerà ad y il valore di x incrementato di una unità, cioè 11. In pratica l’istruzione incrementerà prima la variabile x e successivamente la assegnerà ad y. Se invece avessi scritto così:
y=x++;
la variabile y non avrebbe il valore 11 ma 10. La spiegazione sta nel fatto che con l’operatore postfisso, l’incremento viene effettuato dopo l’assegnazione, cioè ad y viene prima assegnato il valore di x e successivamente avviene l’incremento. Una tale situazione deve essere presa in seria considerazione perché potrebbe alterare il risultato di una operazione. Gli operatori unari, quindi, devono essere utilizzati con molta attenzione e cognizione di causa.

Operatori relazionali
Durante la scrittura di un programma, capita spessissimo di dover eseguire un blocco di codice al posto di un altro in base al risultato della valutazione di una condizione. Nella valutazione di una condizione, di solito compaiono due valori che saranno confrontati. Gli operatori relazionali vengo utilizzati appunto per effettuare questi confronti. Questi sono gli operatori relazionali:

Operatori C#
Operatore Descrizione
> maggiore di
< minore di
== uguale a
!= diverso da
>= maggiore o uguale
<= minore o uguale

Il risultato di questi confronti è un valore booleano (vero o falso), per esempio:


5>3 vero
3>6 falso
4==4 vero
2!=2 falso

Nella lezione successiva, utilizzeremo l’istruzione che utilizzerà questi operatori: l’istruzione if .

   27/09/2010 22:45:31 pm
  • No Related Post
1 Comment »

Un commento a “Lezioni C# – Operatori”

  1. [...] Lezione C# – L´istruzione if [...]

    Lascia un commento

Spam protection by WP Captcha-Free

  • I bannerGhinea.it
minibanner1
minibanner2
minibanner3
minibanner4
  • Sidebar
  • Categories:
  • Abbiamo lanciato a gennaio 2012 un nuovo sito WordPress: tmptecnorestauri.it
    Abbiamo lanciato alla fine di novembre 2011 un nuovo sito WordPress: infortunisticabologna.net
    Un sito amatoriale: www.sorrisodiluna.too.it
    Giochi online: www.mostfun.com
    Sempre classico: www.gianlucabianchi.it
    I siti web della settimana
    WordPress inarrestabile
    La PEC… vola
    Google nemico della memoria?
    Anonymous: nemici pubblici numero uno







    Stefan Ghinea - Consulenze informatiche e soluzioni software
    Via Marchini, 26 - 59100 Prato (PO) - Tel.: 340 2123560; Fax: 0574 027820  E-mail Home page
    © 2010 by GhineaWebSolutions.it