[Programming basics] - Sum Prime Non Prime - Javascript
здравейте, може ли малко помощ за задачата. Кодът ми е :
https://pastebin.com/6zZ8pMTa
в judge ми излиза с 10/100 и много часовници.
здравейте, може ли малко помощ за задачата. Кодът ми е :
https://pastebin.com/6zZ8pMTa
в judge ми излиза с 10/100 и много часовници.
На пръв поглед виждам, че на 9-ти ред изпълняваш функцията shift(), което ще вземе следващия ред от твоя input. Това обаче го правиш и на края на while цикъла. Тоест стават общо два пъти за едно завъртане. Вместо това можеш просто да направиш следното:
let num = Number(command);
Здравей, ето ти едно решение на Java, сравни ги, за да успееш да намериш разликите :-) Успех
https://pastebin.com/d6fWQU1K
Здравейте, вашияд код 100 от 100. Както каза колегата на 9ти ред има едно излишно почикване. Също така ако числото е по-малко от нула, преди continue, трябва да се изчика ново подаване.function primeNonprime(input) {
let command = input.shift();
let primeSum = 0;
let nonPrimeSum = 0;
while (command != "stop"){
let num = Number(command);
if (num < 0) {
console.log("Number is negative.");
command = input.shift();
continue;
}
let isPrime = true;
if (num == 1) {
isPrime = false;
} else {
for (let i = num; i >= 2; i--) {
if (num % i == 0 && i != num) {
isPrime = false;
break;
}
}
}
if (isPrime) {
primeSum += num;
} else {
nonPrimeSum += num;
}
command = input.shift();
}
console.log(`Sum of all prime numbers is: ${primeSum}`);
console.log(`Sum of all non prime numbers is: ${nonPrimeSum}`);
}
много благодаря на всички :)
Съвета на колегата е добър, но трябва да добавиш и вход преди continue при отрицателни.
https://pastebin.com/UcVBmsZ5