Перетворіть трійкове число, подане як рядок тексту (англ. string) (наприклад, «102012»), на його десятковий еквівалент, спираючись на базові принципи.
Програма має вважати рядки тексту, що задають некоректне трійкове число, рівними значенню 0.
Трійкові числа містять три символи: 0, 1 і 2.
Останній розряд у трійковому числі - розряд одиниць. Передостанній - розряд трійок, третій з кінця - розряд девʼяток тощо.
# "102012"
1 0 2 0 1 2 # the number
1*3^5 + 0*3^4 + 2*3^3 + 0*3^2 + 1*3^1 + 2*3^0 # the value
243 + 0 + 54 + 0 + 3 + 2 = 302
Якщо мова, якою ми пишемо, надає метод у стандартній бібліотеці для виконання цього перетворення, вдайте, ніби його не існує, і реалізуйте його самостійно.
| Регістр | Використання | Тип | Опис |
|---|---|---|---|
$a0 |
вхідні дані | адреса | рядок тексту (англ. string) з трійкових символів, завершений нульовим символом |
$v0 |
вихідні дані | ціле число | десяткове значення вхідного рядка |
$t0-9 |
тимчасовий | будь-який | використовується для тимчасового зберігання |
Зареєструйтеся на Exercism, щоб вивчати й опановувати MIPS Assembly, а також 70 вправ та справжнє наставництво від людей, і все це безкоштовно.