Loading...

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

klimi avatar klimi 1 Точки

еднакви 3 числа

Здравейте,

За тази задача judge ми дава 70%:

Задача: еднакви 3 числа Да се напише функция, в която се подават като аргументи 3 числа и се отпечатва дали те са еднакви (yes / no).

 

Решението ми е:

function equalnumbers([arg1,arg2,arg3]){

    let num1=Number(arg1)

    let num2=Number(arg2)

    let num3=Number(arg3)

    if(num1===num2===num3){

        console.log("yes")

    }else {

    console.log('no')

    }

}

 

Подозирам, че проблемът идва от if функцията...Може ли някой да ми каже къде греша?

Благодаря.

Тагове:
icowwww avatar icowwww 2673 Точки

Винаги връща no, защото сравняваш изхода от първата част num1===num2 с num3

Ще се убедиш ако подадеш equalnumbers([5, 5, true])

и не кастваш към число let num3 = arg3

 

Оправи го в if-a:    if(num1===num2 && num2===num3){

0
svephoto avatar svephoto 1191 Точки

Здравей, колега icowwww, проблемът е, че дори и така не става, като според мен има някакъв проблем с тестовете в Judge конкретно за решенията на JavaScript. Вариантът if (num1 === num2 && num2 === num3) не променя нещата, също и if (num1 === num2 && num1 === num3) - всеки път 70/100. Решение на Java с тези два варианта минава и двата случая със 100/100. Иначе доколкото виждам при klimi и трите входа са обърнати в Number.

Интересното е, че грешните отговори са само тези, за които системата очаква "yes", а показва, че изходът е "no". В същото време при тестване на решението във VS Code със същите входни данни от тестовете в Judge, се получават коректни изходи, точно както се очаква при така написания код.

0
15/02/2022 23:04:27
icowwww avatar icowwww 2673 Точки

Къде го тестваш

https://judge.softuni.org/Contests/Practice/Index/929#14

и тук мина

https://judge.softuni.org/Contests/Practice/Index/152#14

function equalnumbers([arg1,arg2,arg3]){

    let num1=Number(arg1)

    let num2=Number(arg2)

    let num3=Number(arg3)

    if(num1===num2 && num2===num3){

        console.log("yes")

    }else {

    console.log('no')

    }

}

 

0
klimi avatar klimi 1 Точки

Благодаря за помощта, оправих If-a и мина задачата:

if(num1===num2 && num2===num3)

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