|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 384
|
[C++] operatore "OR (|)", espressioni equivalenti
Devo verificare che in un gruppo di 6 variabili di tipo int, almeno una assuma
un valore uguale a una variabile di confronto. Ossia: If a==x OR b==x OR c==x OR d==x OR e==x OR f==x {y=1} Ho pensato di risolvere creando delle espressioni OR "concatenate", ovvero: if (a==x OR b==x) {k=1}, if (c==x OR d==x) {w=1}, if (e==x OR f==x) {z=1}, if (k==1 OR w==1) {r=1}, if (r==1 OR z==1) {Y=1} Domanda: non c'è un modo più semplice per risolvere l'espressione sopra? C'è una funzione che potrebbe essermi utile a scrivere in modo alternativo questa espressione? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Mah, potresti farti una funzione che accetta un numero arbitrario di argomenti in input dello stesso tipo (vedi <stdarg.h>) e con un ciclo controlla la loro "validità" come meglio credi.
Ma ne vale la pena? Quanti controlli fai di questo tipo che sei spinto a farti addirittura una funzione dedicata? ![]() Magari cerca di riorganizzare il codice per semplificarlo il più possibile. ciao ![]()
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 384
|
Quote:
successiva trasformazione di esso in "parallelo". Usando le istruzioni del "PPL" di VC++ 2010. In particolare cerco di capire se potrò usare "parallel_for" e "parallel_for_each". Ma non ho ancora capito se posso includere nei loop espressioni di questo tipo o lavorano solo su dati unari di variabili int. Ma pensando alle prestazioni finali mi torna in mente la tua affermazione: "ma ne vale la pena?". La Microsoft afferma che con queste librerie si può parallelizzare il propio codice senza modificarlo. Ma io son giunto alla conclusione che con riguardo alle prestazioni, è impossibile non modificare il codice. ![]() Ultima modifica di Albitexm : 07-06-2010 alle 02:07. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:33.