ciao
scusate l'ignoranza, ma che significa
il punto interrogtivo e i 2 punti in un codice del tipo:
for (i=0;i<RILEVAZ;i++){
scost = t[i]>mt ? t[i]-mt : mt-t[i];
somScost += scost;
oppure più semplicemente:
n = (n>10 ? 10 : n);
grazie
ciao
scusate l'ignoranza, ma che significa
il punto interrogtivo e i 2 punti in un codice del tipo:
for (i=0;i<RILEVAZ;i++){
scost = t[i]>mt ? t[i]-mt : mt-t[i];
somScost += scost;
oppure più semplicemente:
n = (n>10 ? 10 : n);
grazie
Se t[i] è maggiore di mt, alla variabile scost assegno il valore t[i] - 1, altrimenti assegno il valore mt - t[i].Originariamente inviato da lucas726
ciao
scusate l'ignoranza, ma che significa
il punto interrogtivo e i 2 punti in un codice del tipo:
for (i=0;i<RILEVAZ;i++){
scost = t[i]>mt ? t[i]-mt : mt-t[i];
somScost += scost;
oppure più semplicemente:
n = (n>10 ? 10 : n);
grazie
? : è un operatore di confronto ternario.
codice:condizione ? true: false;
michele
michele.facchin@virgilio.it
Server:irc.azzurra.org | /join #c
E un abbreviazione del costrutto if
è come direcodice:condizione ? allora : altrimenti
A me non piace ma cmq in certi casi può essere utile per esprimere condizioni semplici semplicicodice:if condizione { //allora } else { //altrimenti }
![]()
E' qualcosa di più di un semplice if alternativo: è un operatore (come ha giustamente detto Michele Facchin).
Questo significa che se l'espressione booleana risulta vera, l'intero codice assume come valore l'espressione dopo il punto di domanda, altrimenti l'intero codice assume il valore dopo i due punti.
Tramite quell'operatore si possono abbreviare enormemente codici, altrimenti, più "pesanti". Prova a vedere questo codice, ad esempio:
Può essere scritto in una sola riga:codice:int fattoriale(int x) { if (!x) { return 1; } else { return x * fattoriale(x - 1); } }
codice:int fattoriale(int x) { return (!x) ? 1 : x * fattoriale(x - 1); }
Ciao.![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza
grazie a tutti per l'intervento.