2013-05-06 1 views
0

삼진 연산에 'for'루프를 넣을 수 있습니까?for 루프를 삼항 연산에 넣기

int isPrime(int number){ 
     return number&1 || !(number&1) || number==2 ? 0:1; 
} 

그것의를 추가 할 수있을 것입니다 :

int isPrime(int number){ 
int i, root = sqrt(number)+1; 

if(number==1||!(number)||!(number&1)) return 0;    
if(number==2)       return 1; 
for(i=3;i<root;i+=2) if(!(number%i)) return 0; 

return 1; 

} 여기

내 "생각"의 시작에 : 숫자가 소수 인 경우

여기 찾기위한 코드입니다 거기에 루프 체크?

+1

정말 도움이 될까요? – Alex

+0

아닙니다. 그것은 단지 흥미를 돋 웠고, 가능한지 모르겠다. – galois

+4

GCC [Statement expressions] (http://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html)와 같은 컴파일러 확장 기능을 사용할 수 있었다.)), 표준 C가 아니다. – Mat

답변

5

아니, 삼항 연산자의 형식이기 때문이다 :

condition ? first_expression : second_expression;

for 루프는 표현은 아니지만이 - 그것이 성명 (에서와 같이,이 결과로 평가하지 않습니다)