DaniilFPS
13.01.2022 19:47

Язык джава решить задачу по массивам Вычтите с сканнера массив с 8 числами и возьмите по каждому значению массива вычтите индекс

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
bulgatovanastya1
17.06.2021 02:48

Данный перевод возможен двумя : прямой перевод и через десятичную систему.

Сначала выполним прямой перевод.

Выполним прямой перевод из шестнадцатиричной в двоичную вот так:

AD45EF16 = A D 4 5 E F = A(=1010) D(=1101) 4(=0100) 5(=0101) E(=1110) F(=1111) = 1010110101000101111011112

Окончательный ответ: AD45EF16 = 1010110101000101111011112

Теперь выполним перевод через десятичную систему счисления.

Выполним перевод в десятичную систему счисления вот так:

Знаковый бит в переводе не участвует!

2∙165+13∙164+4∙163+5∙162+14∙161+15∙160 = 2∙1048576+13∙65536+4∙4096+5∙256+14∙16+15∙1 = 2097152+851968+16384+1280+224+15 = 296702310

Так как число знаковое и имеет знаковый бит, то результат будет иметь отрицательный знак

Получилось: AD45EF16 =-296702310

Переведем число -296702310 в двоичное вот так:

Целая часть числа находится делением на основание новой системы счисления:

2967023 2                      

-2967022 1483511 2                    

1 -1483510 741755 2                    

1 -741754 370877 2                  

1 -370876 185438 2                  

1 -185438 92719 2                

0 -92718 46359 2                

1 -46358 23179 2              

1 -23178 11589 2              

1 -11588 5794 2            

1 -5794 2897 2            

0 -2896 1448 2          

1 -1448 724 2          

0 -724 362 2        

0 -362 181 2        

0 -180 90 2      

1 -90 45 2      

0 -44 22 2    

1 -22 11 2    

0 -10 5 2  

1 -4 2 2  

1 -2 1  

0  

Перевод чисел из одной системы счисления в другую

В результате преобразования получилось:

-296702310 = 10110101000101111011112

Вы указали что размер вашего числа 1 байт.

Уберем лишние биты с учётом знакового бита вот так:

10110101000101111011112 = 111011112

Так-как введенное Вами число отрицательное то необходимо перевести его из прямого кода в дополнительный.

Для этого сначала выполним преобразование из прямого кода в обратный инвертированием всех битов кроме знакового, затем получим прямой код добавлением 1 бита.

1 1 1 0 1 1 1 1  прямой код

1 0 0 1 0 0 0 0 обратный код

+ 1 +1 бит

1 0 0 1 0 0 0 1 дополнительный код

Окончательный ответ: AD45EF16 = 100100012 (1 байт)                              

удачи

0,0(0 оценок)
Ответ:
Darina2581
10.06.2020 07:19
Воспользуемся расширенной записью шестнадцатиричного числа в десятичной системе счисления. Тогда
3(a*16²+b*16+c)=b*16²+c*16+a;
767a=208b+13c; 59a=16b+c → a=(16b+c)/59  (1)
Здесь a,b,c - шестнадцатиричные цифры, имеющие десятичный эквивалент от 0 до 15.
Наложим ограничения. a и b не могут быть нулевыми, поскольку с них начинаются числа, а с может быть и нулем. При b=15 и c=15 значение a по формуле (1) не может быть больше (16*15+15)/59, что в целых числах дает 4.
Следовательно, нам надо подобрать такие b и c, чтобы a принимало значения от 1 до 4. Будем подставлять эти значения в (1).
1) При а=1 получаем (16b+c)/59=1 → 16b+c=59.
b=59/16=3 (нацело), c=59-16*3=11. Искомое число 13B₁₆
2) При а=2 получаем (16b+c)/59=2 → 16b+c=118.
b=118/16=7 (нацело), с=118-16*7=6. Искомое число 276₁₆

Аналогичным образом находим два остальных числа: 3B1₁₆ и 4EC₁₆

Замечание. Фактически, мы получаем числа 59х1, 59х2, 59х3, 59х4 и переводим их в шестнадцатиричную систему счисления, поскольку в формуле (1) в скобках записано представление расширенное представление шестнадцатиричного числа.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота