Проблем със задача Converter

Здравейте,

Имам някакъв проблем със задачата Converter от Basic programming. Дава ми тази грешка на един от тестовете:
Your output (clipped)
282 litres per 100 km
Може ли някакъв съвет.
Ето линк към кода:
https://pastebin.com/qtxHJTf7

2 Likes

Я дай линк към задачата или условието, че не я намирам никъде.

https://judge.telerikacademy.com/problem/00109converter

No such problem

Could not find a problem with the code “00109converter”.

Направо напиши какво се изисква (условието) и ще сравня с кода ти :wink:

You want to buy this really cool car from the UK, but you are worried about the fuel consumption. The values you see are MPG (miles per gallon). You have no idea what 20 MPG means so, being a programmer, decide to write a converter that helps you calculate the consumption.

Doing some research, you learn that 1 gallon = 4.54 litres and 1 mile = 1.6 km .

After the calculation, round the result down to the neareast whole number.

Input

  • On the first line you will receive a number m - miles per galon

Output

  • On the only line of output, print {result} litres per 100 km

Constraints

  • 1 <= m <= 100

Здрастии,
Сигурен ли си, че закръгляваш правилно?

1 Like

Тъй като няма как да го проверя и са само догадки
Формулата! При теб е “282.48” Навсякъде намирам информация, че тази формула е с константа 235
Намирам и следното

mpg = (km/lt) * 2.352
km/lt = mpg * 0.425

So,
10 km/lt = 23.52 mpg
20 km/lt = 47.04 mpg

Пробвай да смениш константите, дано помогне.
А за закръглянето… round the result DOWN to the neareast whole number
щом е down, а кастването реже всичко след запетаята (99.9999 = 99) това трябва да е вярно.

Нещо не се получава и с Math.floor и с кастване в инт. А 282.48 е заради британския галон.

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

const mpg = +gets(); // Взимане на входните данни
const mile = 1.6;
const gallon = 4.54;
const kpl = (100 * gallon) / (mile * mpg);

print(`${Math.floor(kpl)} litres per 100 km`);

Логиката трябва да е същата и при java, ако утре няма успех, ще запаля Intellij да я разцъкам :slight_smile:

5 Likes

@teodor.tzvetanov прочети условето какво изисква и се придържай към него :wink:
Константната стойност 282.48, която ползваш не мисля, че покрива условията.
Задачите са ориентирани към конктретни условия, които трябва да се покрият.

В крайна сметка стана, благодаря за помощта.

Привет, за цялостно решение без проблем на задачата ползвай за формулата числото 283, вместо 282.48.

2 Likes

Аз също имах проблем, защото използвах Math.down и минаваше 2 от 5 теста , но след като го замених с Math.floor мина и 5те теста. Благодаря на всички за насоките!

Kak priloji ogranichenieto 1 <= m <= 100?
Mnogo blagodarya

По принцип, не съм от хората с много опит, но личното ми впечатление е, че Constraints определя горния и долния лимит на Input-a от Test case-овете и не е нещо, което трябва да проверяваш.

1 Like