Loading...
nklnikolaev avatar nklnikolaev 0 Точки

Проблем с Judge

Здравейте колеги,

имам проблем с Judge системата, при дебъгването на кодовете във Вижуал Студио всичко е наред, но в Съдията ми дава 0/100.

Първата задача е :

06. Concatenate Data

function concatenateData([fname, lname, age, town]) {
    console.log("You are " + fname + " " + lname + ", a " + age + "-years old person from " + town + ".");
}

function concatenateData([arg1, arg2, arg3, arg4]) {
    fname = arg1;
    lname = arg2;
    age = Number(arg3);
    town = arg4;

    console.log(`You are ${fname} ${lname}, a ${age}-years old person from ${town}.`);
}

function concatenateData([fname, lname, age, town]) {
    console.log(`You are ${fname} ${lname}, a ${age}-years old person from ${town}.`);
}

 

Expected output:

You are Maria Ivanova, a 19-years old person from Pleven.

Your output:

You are M a, a NaN-years old person from i.

 

Следващият е:

07. Projects Creation

function projectsCreation([arg1, arg2]) {
    name = arg1;
    projects = parseInt(arg2);
    hours = projects * 3;
    console.log(`The architect ${name} will need ${hours} hours to complete ${projects} project/s.`);
}

function projectsCreation([arg1,arg2]) {
    let name = String(arg1);
    let projects = Number(arg2);
    let hours = projects * 3;
    console.log(`The architect ${name} will need ${hours} hours to complete ${projects} project/s.`);
}

 

Expected output:

The architect George will need 12 hours to complete 4 project/s.

Your output:

The architect G will need NaN hours to complete NaN project/s.

 

08. Pet Shop

function petShop([arg1, arg2]) {
    dog = parseFloat(arg1 * 2.50);
    another = parseFloat(arg2 * 4);
    console.log(dog + another + " lv.");
}

C:\Windows\TEMP\ExecutionStrategies\mfl3smjr.zft\tmp1C84.tmp:79
    run: function petShop([arg1, arg2]) {
                         ^

TypeError: undefined is not a function
    at petShop (C:\Windows\TEMP\ExecutionStrategies\mfl3smjr.zft\tmp1C84.tmp:79:26)
    at adapter (C:\Windows\TEMP\ExecutionStrategies\mfl3smjr.zft\tmp1C84.tmp:86:10)
    at Socket.<anonymous> (C:\Windows\TEMP\ExecutionStrategies\mfl3smjr.zft\tmp1C84.tmp:93:18)
    at Socket.emit (events.js:214:15)
    at endReadableNT (_stream_readable.js:1178:12)
    at processTicksAndRejections (internal/process/task_queues.js:80:21)

Благодаря ви предварително!

Поздрави Николай

 

mttnu avatar mttnu 82 Точки
Best Answer

Премахни квадратните скоби, обграждащи параметрите на функцията.
Използвай let при деклариране на променливи.
За "08. Pet Shop", по условие, трябва да принтираш стойност, закръглена до втората цифра след десетичната запетая.

06. Concatenate Data:

function concatenateData(arg1, arg2, arg3, arg4) {
  let fname = arg1;
  let lname = arg2;
  let age = Number(arg3);
  let town = arg4;

  console.log(`You are ${fname} ${lname}, a ${age}-years old person from ${town}.`);
}

07. Projects Creation

function projectsCreation(arg1, arg2) {
  let name = arg1;
  let projects = parseInt(arg2);
  let hours = projects * 3;
  console.log(`The architect ${name} will need ${hours} hours to complete ${projects} project/s.`);
}

08. Pet Shop

function petShop(arg1, arg2) {
  let dog = parseFloat(arg1 * 2.5);
  let another = parseFloat(arg2 * 4);
  let total = dog + another;
  console.log(total.toFixed(2) + " lv.");
}

// Относно закръглянето до втората цифра след запетаята - имаш два варианта:
1) Създаваш си нова променлива, в която пресмяташ необходимата стойност и след това при отпечатването закръгляш с .toFixed(2) - препоръчителен вариант.
2) Ображдаш изчисленията, които извършваш в console.log и ги обграждаш с toFixed(2).
- Непрепоръчително. Реално ще работи, ще ти изкара 100/100, но става прекалено голямо мазане и може да ти стане навик, което не е добре.
:) 

0
nklnikolaev avatar nklnikolaev 0 Точки

Благодаря ти много !

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

Благодаря ти отново за помоща.

0
ignat.off avatar ignat.off 1 Точки

Здравейте. Моля за помощ.
И аз имам проблем но със задачата за Стипендиите от Упражнение Проверки (условието - https://softuni.bg/trainings/resources/officedocument/48960/exercise-problem-descriptions-programming-basics-with-javascript-april-2020/2904). Сравнявах си кода не знам колко пъти с този на Христомир Асенов, когато реши задачата в упражнението и не намирам разлики. Но на мен ми дава 68/100. https://pastebin.com/n3VrFtpA

0
MartinBG avatar MartinBG 4625 Точки

@ignat.off

Имаше няколко грешки в логиката, както и в стринга за отличен успех.

Това е поправеният код:

function scholarship(num1, num2, num3) {
  let income = Number(num1);
  let avScore = Number(num2);
  let minWage = Number(num3);

  let social = 0;
  let excellent = 0;

  if (avScore > 4.50) { // Тук

    if (income < minWage) { // Тук
      social = minWage * 0.35;
    }

    if (avScore >= 5.50) {
      excellent = avScore * 25;
    }

  }

  if (social > excellent) {
    console.log(`You get a Social scholarship ${Math.floor(social)} BGN`);
  } else if (excellent >= social && excellent > 0) { // Тук
    console.log(`You get a scholarship for excellent results ${Math.floor(excellent)} BGN`); // Тук
  } else {
    console.log(`You cannot get a scholarship!`);
  }

}

 

0
ignat.off avatar ignat.off 1 Точки

@MartinBG благодаря много за отговора! Вече е 100/100 smiley

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