Loading...
BoYaN avatar BoYaN 336 Точки

[Python Fundamentals- Functions and Debugging] проблем с тестове в Judge

Здравейте,
от вчера е активно Functions and Debugging, но забелязвам, че тестовете вероятно са копирани 1 към 1 от C# и изхода на Python трябва да се наглася според ограниченията на double и float в C#. Тези неща не са описани в условията и се налага да се налучкват за повечето задачи. Това умишлено ли е направено или да очакваме корекция на тестовете в judge.

Тагове:
0
Python
Housey avatar Housey Trainer 129 Точки
Best Answer

Здравей,

Тестовете на 6-та задача вече са оправени, така че да не очакват специално форматиране. Задачата вече приема изход, принтиран по този начин:

print(result)

Имайте предвид, че това не означава, че тези от вас, които са пуснали решения, които имат 100 точки на тази задача ще ги загубят. Промяната се прилага при всички нови събмити, които сте пуснали в Judge системата и те ще се оценяват спрямо новите тестове.

0
17/01/2018 21:19:12
mart.krast avatar mart.krast 2 Точки

Здравей,

 

не съм запознат със C# или други програмни езици но аз също имам проблеми с решенията на задачи 5 и 6. Има ли нещо общо с проблема който описваш?

 

Благодаря!

0
BoYaN avatar BoYaN 336 Точки

Здрасти,
за 5-та и аз не успях да го измисля, по културен начин да го наглася ако печаташ така print(triangle_area(b, h)) 1-ви и 2-ри тест не минават, заради нулите след дестичната запетая, ако позваш print(f'{triangle_area(b, h):g}') (:g маха незначещите нули) гореспоменатите тестовете минават, но пък 3-и и 5-и тест вече гърмят.
За 6-а задача най-много тестове (80 от 100) хващам като форматирам така print(f'{raise_power(n, p):7.0f}') (точността на float в C# е 7 знака). Намерих във форума едно решение на колегата lilia https://pastebin.com/DUQKuVYn , което хваща 100/100.
Дали проблема е от прехвърлянето на тестовете от друг език, това е само мое предположение, но явно не само аз имам проблем с тестовете.

0
mart.krast avatar mart.krast 2 Точки

Здравей,

 

благодаря за решението на задача 6! Наистина дава 100%, но дали това е най-лесния начин по принцип?

Следващия път трябва да попитам преподавателя какви трябва да бъдат решенията - по точно определен начин който той очаква или просто такива които работят. Защото изглежда че такива които просто работят май не минават за верни (освен ако не е станала описаната по-горе грешка). При задачите от предишния урок не получавах 100% само защото използвах имена на променливи различни от тези в заданието, а никой не ни беше предупредил изрично за това.

0
BoYaN avatar BoYaN 336 Точки

За 6-та това е overkill решение, макар и да хваща 100/100. Имам опит с python, но като не знам изискванията няма как да измисля и някое по-културно решение. Ако си присъствено питай направо откъде идват проблемите, гледам че и judge освен преподавателя, никой друг не е изкарал пълен брой точки (към момента).

0
BoYaN avatar BoYaN 336 Точки

Айде всички задачи от домашното ги натъкмих и вече са 100/100.
Има обновена версия на файла с упражненията (от вчера), където на 5-а са посочили колко места след десетичната запетая трябва да се форматира изхода {area:.12g} [12 след запетаята и да се махнат незначещите нули]
За 6-а се наложи да правя bruteforce докато разбера, че e 14 знака {raise_power(number, power):.14g}

В Github може да разгледате решенията ми на всички задачи.

0
mart.krast avatar mart.krast 2 Точки

Благодаря!

1
petkovst avatar petkovst 0 Точки

Благодаря, бях зациклил с форматирането и се чудех как да го вмъкна в print-a
 

def area(b, h):
     return b * h / 2

b = int(input())
h = int(input())

print(area(b, h)

 

0
AlucardDracula avatar AlucardDracula 416 Точки

не мисля колега, просто гледат output-a, а това форматирането му е твой проблем smiley Гледам че си минал и javascript-a, което аз сега започвам(JS Core) и като гледам басикс и фундаменталс курсовете гледат само output-a + някои ООП задачи.

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