یک عدد «سهپایه» را که به شکل رشته نمایش داده میشود (مثلاً «102012») با استفاده از اصول اولیه به معادل دهدهی آن تبدیل کنید.
اگر رشتهای عدد سهپایهی نامعتبری را مشخص کند، برنامه باید آن را مقدار ۰ در نظر بگیرد.
اعداد سهپایه شامل سه نماد هستند: ۰، ۱ و ۲.
آخرین خانه در یک عدد سهپایه، خانهی یکها است. یکی مانده به آخر خانهی سهها است و دو مانده به آخر خانهی نهها و به همین ترتیب.
# "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 |
ورودی | آدرس | رشتهی پایانبندیشده با null از کاراکترهای سهگانه |
$v0 |
خروجی | عدد صحیح | مقدار دهدهی رشتهی ورودی |
$t0-9 |
موقت | هر نوعی | برای ذخیرهسازی موقت استفاده میشود |
در Exercism ثبتنام کنید تا MIPS Assembly را همراه با 70 تمرین و مربیگری انسانی واقعی یاد بگیرید و در آن استاد شوید، همهی اینها رایگان.