2013-10-26 9 views
-5
int max = 100; 
    String result=""; 

    // loop through the numbers one by one 
    for (int i = 1; i<max; i++) { 
     boolean isPrimeNumber = true; 

     // check to see if the number is prime 
     for (int j = 2; j < i; j++) { 
      if (i % j == 0) { 
       isPrimeNumber = false; 
       break; // exit the inner for loop 
      } 
     } 
     // print the number if prime 
     if (isPrimeNumber) { 
      result=result+i+",";//used to holding the value for i 
     } 
     lblDisplay.setText(""+result);//used to holding the value for i 
    } 
}      

처음으로 i의 값을 1로 설정하고 1이 100보다 작 으면 시스템이 확인합니다 ... 진행합니다 .... 나중에 j 값이 2 인 경우 if j 값이 i보다 작 으면 시스템은 루프합니다 ....하지만 2가 1보다 큽니다. 시스템에서 여전히 결과를 생성 할 수 있습니까? 아무도 왜 내게 말할 수 있습니까? 1로누구든지이 코드를 설명하는 방법을 알고 있습니까?

+0

줄 단위로, 무엇을 이해합니까? –

+0

Java 프로그래밍에 대한 훌륭한 서적 서적을 읽으려면 몇 시간이 걸릴 필요가 있습니다. 그런 다음 컴퓨터에서 실행하고 일부 디버거를 사용하여 코드에 단계별로 (또는 적어도 인쇄 문을 추가하십시오). –

+0

소수에서 인쇄하고 싶습니까? –

답변

0

특수 번호와 별도로 외부 루프 내부에 1 조건을 작성해야하므로 그렇지 소수에 해당되는 :

if(i == 1) 
     isPrimeNumber = false; 

그리고
for (int j = 2; j < i; j++)
에서 내부 루프
변경 받는 사람
for (int j = 2; j <= i/2 ; j++)

관련 문제