Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

PoliDobreva avatar PoliDobreva 1 Точки

Programming Fundamentals PrimesInGivenRange

Някой може ли да помогне с насоки по логиката на тази задача, не ми печата 2 и 3, започва от 5...

знам, че тр да ги печата и със запетая, но това мога да го оправя, само не виждам защо не ми печата първите числа...

Ето и условието :

Write a method that calculates all prime numbers in given range and returns them as list of integers:

static List<int> FindPrimesInRange(startNum, endNum)

{

    …

}

Write a method to print a list of integers. Write a program that enters two integer numbers (each at a separate line) and prints all primes in their range, separated by a comma.

Examples

Start and End Number

Output

0

10

2, 3, 5, 7

5

11

5, 7, 11

100

200

101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199

250

950

251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947

100

50

(empty list)

Тагове:
0
Programming Basics
Ivelin_Dimitrov avatar Ivelin_Dimitrov 148 Точки

Може и без лист, директно да печата когато го намериш, но все тая. Без да ти видим кода, няма как да разберем защо не ти пeчата първите числа, но като цяло логиката е да завъртиш един for, който започва от първият Integer и върти до вторият Integer включително 

for (int index = startNumber; index <= stopNumber; index++) { //TODO...

и за всяко число (във случаят това ще бъде index-а) да проверяваш дали е prime или не, и няма нужда да ги проверяваш за целият диапазон, а само до мисля, че беше до корен квадратен от самото число.. праверката ще изглеждна нещо от сорта на 

boolean prime = true;

if (number % 2 == 0 && number != 2 || number < 2) {
     // Няма да е prime -> prime = false;
} else {
    for (int i = 2; i <= Math.sqrt(number); i++) {
        if (number % i == 0) {
            // Няма да е prime -> prime = false; 
            break;
        }
    }
}

//Ако prime е останало true след проверките, значи числото е Prime
//Else не е Prime
0
18/06/2018 17:25:33
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

не си и прочел условието добре колега ще и е трудно да ги подреди с запетайки един след друг  номерата иначе най-простичко и лесно е  с list и после string.join иначе ще стане едно мазало.

Write a program that enters two integer numbers (each at a separate line) and prints all primes in their range, separated by a comma.

 

0
Ivelin_Dimitrov avatar Ivelin_Dimitrov 148 Точки

Незнам дали им е показан String.join затова го казах, и все пак казах че е все тая :) но за да ти отговоря нещо на бързо примерно

 if (isPrimeNumber(index)) {
      br ++;
      if (br == 1) {
      System.out.print(index);
      } else {
          System.out.print(", " + index);
      }
  }

иначе със лист ще и е по лесно опр.

0
18/06/2018 17:28:06
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.