2013-03-25 3 views
1

Я новичок в программировании и нуждаюсь в помощи по программе java. Я хочу, чтобы моя программа вернуть все простые числа от 1 и 10.Программа для простых номеров для Java

for(int i=1; i<=10; i++){ 
     int factors = 0; 
     int j=1; 

     while(j<=i){ 
      if(i % j == 0){ 
       factors++; 
      } 
      j++; 
     } 
     if(factors==2){ 
      System.out.println(j); 
     } 
    } 

Вместо получения 2,3,5 и 7 я получаю 3,4,6 и 8

+2

есть достаточно примеров таких программ в Интернете, пожалуйста, сделать усилие, чтобы искать их –

+1

ОР пытается найти ошибку в своей собственной программе. Пример другой программы не будет полезен. – iamnotmaynard

ответ

2

просто напечатать I вместо J

for(int i=1; i<=10; i++){ 
    int factors = 0; 
    int j=1; 

    while(j<=i){ 
     if(i % j == 0){ 
      factors++; 
     } 
     j++; 
    } 
    if(factors==2){ 
     System.out.println(i); 
    } 
} 
+0

спасибо за помощь – idude

7

Вы печатаете j вместо i, изменить println() строку:

System.out.println(i); 

Ваши результаты 'one too large' as j = i + 1 после while -loop.

 Смежные вопросы

  • Нет связанных вопросов^_^