[Programming Fundamentals] Problem 4.PhotoGallery
Здравейте, колеги,
Бих искал да попитам къде греша на следната задача. Изкаравам 70/100, но си минавам нулевите тестове и дори не разбирам каква може да е грешката при мен. code
Здравейте, колеги,
Бих искал да попитам къде греша на следната задача. Изкаравам 70/100, но си минавам нулевите тестове и дори не разбирам каква може да е грешката при мен. code
Което аз виждам като грешка/ненужно в твоя код:
За мен променливите ти sizeAb и resolution са излишни, можеш съвсем спокойно да си ги вкараш нещата в един Console.WriteLine().
Годината няма нужда от d4.
Другото - делението ти на 1000000.00 можеш да не ги пишеш нулите след десетичната запетая.
Ето на този линк: https://pastebin.com/NAScm44D можеш да видиш и моето решение, което е доста аналогично на твоето и дава 100/100. Ползвай този сайт като искаш да споделиш кода си във форума, защото иначе става пост-стена, има си графи за разпознаване на синтаксиса на C#.
Грешката ти е {size:f1} , така правиш цели мегабайти да се изписват примерно 999.0MB, явно искат да са 999MB, махни го :f1 и си готов.
По-важното е да почнеш да ползваш pastebin преди да сложиш 100 реда мазаляк в форума. И другото - дебъгни поне с минимални и максимални стойности на входните данни, нулевите тестове нарочно са направени да не покриват всички случаи.
При мен беше същия проблем! ПОправих го с твоя помощ, благодаря!!!
Здравейте!
Тъй като вече има отворена тема за задачата, мисля да ви попитам направо тук.
Трудно ми е да си обясня изчисляването от байтове към друга единица. Това е кода ми: https://pastebin.com/i3nmp8s3 , оставил съм място за конвертирането на единиците.
Някой може ли да ми ги обясни по-подробно как да ги изчисля?
Благодаря предварително!
извинявам се за неползването на пейстбин, ама е за няколко реда код:
if (size < 1000)
{
Console.WriteLine("Size: {0}B", size);
}
else if (size < 1000000)
{
size /= 1000;
Console.WriteLine("Size: {0}KB", size);
}
else
{
size /= 1000000;
Console.WriteLine("Size: {0}MB", size);
}
с три иф-а си определяш дали ще е B, KB или MB, като на последните два размера делиш на съответното число. Дано съм помогнал - ако не, пиши пак.
if (size>=1000000)
{
size = size / 1000000.00;
sizeAb = "MB";
Console.WriteLine($"Size: {size:f1}{sizeAb}");
}
всичко е ок, само закръглянето с "f1" трябва да се махне и си работи.