Задача 8!
Здравейте, имам един въпрос! На задача 8 функцията трябва да обръща само трицифрени или от всеки вид?
Здравейте, имам един въпрос! На задача 8 функцията трябва да обръща само трицифрени или от всеки вид?
Поясни откъде е тази задача 8 и какво е условието ѝ ако искаш да получиш отговор по- бързо.
Привет,
Примера, който е даден на задача 8 не ограничава големината на числата. Изискването е да са в десетична бройна система и да са положителни. Т.е. трябва да работи независимо колко голямо е едно число.
Поздрави :)
Много ти благодаря!
Тази задача има няколко подводни камъка в условието:
- Decimal number може да означава както десетично число, така и реално число:
Wikipedia: "A decimal number, or just decimal, refers to any number written in decimal notation, although it is more commonly used to refer to numbers that have a fractional part separated from the integer part with a decimal separator (e.g. 11.25)."
- Не е уточнено какво да се прави при входни числа, които завършват на нула. Например 100 ще даде 1, ако се обработва като число и 001, ако се обработва като стринг.
Решение, при което входа се приема и обработва като стринг работи коректно за всички случаи и е много лесно за реализация, но според мен, не това е очакваното решение на задачата.
Аз лично я реших за цели десетични числа (според дадения пример), тъй като решението за реални числа имаше проблеми заради загубата на информация при много цифри след десетичната запетая. Също така приех, че нулите в края на входното число не е необходимо да се изписват в началото на обърнато число.
В случая се има впредвид десетична бройна система. Иначе аз я реших също по два начина. В единя случай се изхитрих и изплюх обърнатото в цикъл символ по символ на итерация (чрез cout), но после при следващата задача за тестовата функция това решение не ми вършеше работа и трябваше да я пререша този път с връщане на обърнати цели десетични числа.
Аз пък си го преведох така: " Напишете функция, която обръща цифрите на дадено положително десетично число." и го направих с int
Еми от домашното:
8.Write a function that reverses the digits of given positive decimal number. Example: 256 -> 652