1. 123 в четверичной: 1*4^2+2*4+3= 16+4+3=23
2. 322 в шестиричной: 3*6^2+2*6^1+2= 3*36+12+2=122
3. 99 в шестнадцатеричной: 9*16+9= 144+9=153
4. FAC в шестнадцатеричной: 15*16^2+10*16+12= 15*256+160+12=3840+172=4012
5. 111 в двоичной: 4+2+1=7
6. 1001101 в двоичной: 1+4+8+64=77
7.115 в восьмеричной: 64+8+5=77
8. 4С в шестнадцатеричной: 4*16+13=77
9. 34 в семиричной: 3*7+4=25
10. 710 в восьмеричной: 7*64+8=448+8=456
Объяснение:
Вот тебе небольшие лайфхаки для перевода из двоичной в восьмеричную/шестнадцатеричную:
7. 1001101 в восьмеричной: разбиваем на триады начиная справа:
101 = 5 001=1 1=>001=1 получается: 115
8. 1001101 в шестнадцатеричной: также разбиваем, но уже на четыреады:
1101=13=>C 100=4 получается: 4С
import random
def GenEx(count):
signs = ['+', '-', '*', '/']
for _ in range(count):
fn = random.randint(-20, 20)
sn = random.randint(-20, 20)
ex = '{0} {1} {2}'.format(fn, random.choice(signs), sn)
yield (ex + ' = ?', eval(ex))
IsGameRun = True
while IsGameRun:
TrueAnsws = 0
for ex, check in GenEx(2):
print(ex)
resvAnsw = float(input())
if resvAnsw == check: TrueAnsws += 1;
IsRetry = input('You correctly solved '+str(TrueAnsws)+' examples. Do you want to try again? Y/N \n')
if IsRetry == 'Y': IsGameRun = True
else: IsGameRun = False
Объяснение: