Appunti per Scuola e Università
humanisticheUmanistiche
Appunti e tesine di tutte le materie per gli studenti delle scuole medie riguardanti le materie umanistiche: dall'italiano alla storia riguardanti le materie umanistiche: dall'italiano alla storia 
sceintificheScientifiche
Appunti, analisi, compresione per le scuole medie suddivisi per materie scientifiche, per ognuna troverai appunti, dispense, esercitazioni, tesi e riassunti in download.
tecnicheTecniche
Gli appunti, le tesine e riassunti di tecnica amministrativa, ingegneria tecnico, costruzione. Tutti gli appunti di AppuntiMania.com gratis!
Appunti
informatica
CComputerDatabaseInternetJava
Linux unixReti


AppuntiMania.com » Informatica » Appunti di c » Operatori logici di test

Operatori logici di test




Visite: 994Gradito:apreciate 4-stela [ Picolo appunti ]
Leggi anche appunti:

Problemi di cooperazione nel modello a scambio di messaggi


Problemi di cooperazione nel modello a scambio di messaggi VIII) Scrivere

Lavorare con i file batch


Lavorare con i file batch L'interprete dei comandi (COMMAND.COM nella configurazione

Problemi di cooperazione nel modello a memoria comune


Problemi di cooperazione nel modello a memoria comune II) Scrivere una applicazione
immagine di categoria

Scarica gratis Operatori logici di test

Operatori logici di test

Gli operatori logici di test possono essere suddivisi in due gruppi: quelli normalmente usati nei confronti tra valori e quelli utilizzati per collegare i risultati di due confronti. Ecco una breve serie di esempi relativi al primo gruppo:

(a == b) // VERA se a e' UGUALE a b

(a != b) // VERA se a e' diversa da b

(a < b) // VERA se a e' strettamente minore di b

(a > b) // VERA se a e' strettamente maggiore di b

(a <= b) // VERA se a e' minore o uguale a b

(a >= b) // VERA se a e' maggiore o uguale a b

La grafia di detti operatori ed il loro significato appaiono scontati, ad eccezione, forse, dell'operatore di uguaglianza ': in effetti i progettisti del C, constatato che nella codifica dei programmi i confronti per uguaglianza sono, generalmente, circa la metà degli assegnamenti, hanno deciso di distinguere i due operatori 'raddoppiando' la grafia del secondo per esprimere il primo. Ne segue che

a = b;

assegna ad a il valore di b, mentre

(a == b)

esprime una condizione che è vera se le due variabili sono uguali. La differente grafia dei due operatori consente di mortificare, ancora una volta, la povera regola KISS (pag.  ), rendendo possibile scrivere condizioni come

if(a = b) .

Per quanto appena detto, è ovvio che tale scrittura non può significare 'se a è uguale a b': si tratta infatti, in realtà, di un modo estremamente succinto per dire

a = b;

if(a) .

che, a sua volta, equivale a

a = b;

if(a != 0) .

cioè 'assegna b ad a, e se il risultato (cioè il nuovo valore di a) è diverso da ', dal momento che il C, ogni qualvolta sia espressa una condizione senza secondo termine di confronto assume che si voglia verificane la non‑nullità. Carino, vero?

Veniamo al secondo gruppo. Gli operatori logici normalmente usati per collegare i risultati di due o più confronti sono due: si tratta del prodotto logico &&', o and) e della somma logica ', o or)

(a < b && c == d) // AND: vera se entrambe sono VERE

(a < b || c == d) // OR: vera se ALMENO UNA e' VERA

E' possibile scrivere condizioni piuttosto complesse, ma vanno tenute presenti le regole di precedenza ed associatività. Ad esempio, poiché tutti gli operatori del primo gruppo hanno precedenza maggiore di quelli del secondo, la

(a < b && c == d)

è equivalente alla

((a < b) && (c == d)

Nelle espressioni in cui compaiono sia '&&' che ' ' va ricordato che il primo ha precedenza rispetto al secondo, perciò

(a < b || c == d && d > e)

equivale a

((a < b) || ((c == d) && (d < e)))

Se ne trae, se non altro, che in molti casi usare le parentesi, anche quando non indispensabile, è sicuramente utile, dal momento che incrementa in misura notevole la leggibilità del codice e abbatte la probabilità di commettere subdoli errori logici.



 Una decisione davvero insignificante? No. Vedremo tra poco il perché.

Scarica gratis Operatori logici di test
Appunti su:



Scarica 100% gratis e , tesine, riassunti



Registrati ora

Password dimenticata?
  • Appunti superiori
  • In questa sezione troverai sunti esame, dispense, appunti universitari, esercitazioni e tesi, suddivisi per le principali facoltà.
  • Università
  • Appunti, dispense, esercitazioni, riassunti direttamente dalla tua aula Universitaria
  • all'Informatica
  • Introduzione all'Informatica, Information and Comunication Tecnology, componenti del computer, software, hardware ...