М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
PoJalyusta
PoJalyusta
03.11.2022 10:19 •  Информатика

Информатика 8 класс! Перевод чисел в системы счисления! 1) Перевести в восьмеричную и шестнадцатиричную систему счисления следующие числа:1111(2); 0,01111(2); 0,10101011(2); 11, 012; 110, 1012;
2)Перевести в двоичную систему счисления:46,27(8); EF, 12(16)
3)Сравнить числа, выраженные в различных системах счисления: 1101(2) и D(16); 0,11111(2) - 0,22(8); 35,63(8) - 16C(16).​

👇
Ответ:
dan4ik105217
dan4ik105217
03.11.2022

ответ

4,0/5

10

garfild214

ученый

236 ответов

96.5 тыс. пользователей, получивших

Будем сравнивать в десятичной системе, для начала переведём все числа и сравним

1)

1101  =  1*2^3 + 1*2^2 + 0*2^1 + 1*2^0 = 13

D = это 13 по порядку

13 = 13

значит 1101 = D

2)

0.11111 = 1*2^-1 + 1*2^-2 + 1*2^-3 + 1*2^-4 + 1*2^-5 = 0.96875

0.22  =  2*8^-1 + 2*8^-2 = 0.28125

0.96875 > 0.28125

значит  0.11111 (2) > 0.22 (8)

3)

35.63 (8) = 3*8^1 + 5*8^0 +6*8^-1 + 3*8^-2 = 29.796875

16C (16) = 1*16^2 + 6*16^1 + 12*16^0 = 364

29.796875 < 364

значит 35.63 (8) < 16C (16)

Объяснение:

можно лучший ответ?))

4,8(61 оценок)
Ответ:
angelina455
angelina455
03.11.2022

Рефераты

Содержание

Перевод чисел из двоичной системы счисления в восьмеричную и шестнадцатеричную и обратно

Перевод чисел между системами счисления, основания которых являются степенями числа 2 (q = 2n), может производиться по более простым алгоритмам. Такие алгоритмы могут применяться для перевода чисел между двоичной (q = 21), восьмеричной (q = 23) и шестнадцатеричной (q = 24) системами счисления.

Перевод чисел из двоичной системы счисления в восьмеричную. Для записи двоичных чисел используются две цифры, то есть в каждом разряде числа возможны 2 варианта записи. Решаем показательное уравнение:

2 = 2i . Так как 2 = 21, то i = 1 бит.

Каждый разряд двоичного числа содержит 1 бит информации.

Для записи восьмеричных чисел используются восемь цифр, то есть в каждом разряде числа возможны 8 вариантов записи. Решаем показательное уравнение:

8 = 2i . Так как 8 = 23, то i = 3 бита.

Каждый разряд восьмеричного числа содержит 3 бита информации.

Таким образом, для перевода целого двоичного числа в восьмеричное его нужно разбить на группы по три цифры, справа налево, а затем преобразовать каждую группу в восьмеричную цифру. Если в последней, левой, группе окажется меньше трех цифр, то необходимо ее дополнить слева нулями.

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

101 0012 => 1 × 22 + 0 × 21 + 1 × 20 0 × 22 + 0 × 21 + 1 × 20 => 518.

Для упрощения перевода можно заранее подготовить таблицу преобразования двоичных триад (групп по 3 цифры) в восьмеричные цифры:

Двоичные триады 000 001 010 011 100 101 110 111

Восьмеричные цифры 0 1 2 3 4 5 6 7

Для перевода дробного двоичного числа (правильной дроби) в восьмеричное необходимо разбить его на триады слева направо и, если в последней, правой, группе окажется меньше трех цифр, дополнить ее справа нулями. Далее необходимо триады заменить на восьмеричные числа.

Например, преобразуем дробное двоичное число А2 = 0,1101012 в восьмеричную систему счисления:

Двоичные триады 110 101

Восьмеричные цифры 6 5

Получаем: А8 = 0,658.

Перевод чисел из двоичной системы счисления в шестнадцатеричную. Для записи шестнадцатеричных чисел используются шестнадцать цифр, то есть в каждом разряде числа возможны 16 вариантов записи. Решаем показательное уравнение:

16 = 2i . Так как 16 = 24, то i = 4 бита.

Каждый разряд шестнадцатеричного числа содержит 4 бита информации.

Таким образом, для перевода целого двоичного числа в шестнадцатеричное его нужно разбить на группы по четыре цифры (тетрады), начиная справа, и, если в последней левой группе окажется меньше четырех цифр, дополнить ее слева нулями. Для перевода дробного двоичного числа (правильной дроби) в шестнадцатеричное необходимо разбить его на тетрады слева направо и, если в последней правой группе окажется меньше четырех цифр, то необходимо дополнить ее справа нулями.

Затем надо преобразовать каждую группу в шестнадцате-ричную цифру, воспользовавшись для этого предварительно составленной таблицей соответствия двоичных тетрад и шестнадцатеричных цифр.

Переведем целое двоичное число А2 = 1010012 в шестнадцатеричное:

Двоичные тетрады 0010 1001

Шестнадцатеричные цифры 2 9

В результате имеем: А16 = 2916.

Переведем дробное двоичное число А2 =0,1101012 в шестнадцатеричную систему счисления:

Двоичные тетрады 1101 0100

Шестнадцатеричные цифры D 4

Получаем: А16 = 0,D416.

Для того чтобы преобразовать любое двоичное число в восьмеричную или шестнадцатеричную системы счисления, необходимо произвести преобразования по рассмотренным выше алгоритмам отдельно для его целой и дробной частей.

Перевод чисел из восьмеричной и шестнадцатеричной систем счисления в двоичную. Для перевода чисел из восьмеричной и шестнадцатеричной систем счисления в двоичную необходимо цифры числа преобразовать в группы двоичных цифр. Для перевода из восьмеричной системы в двоичную каждую цифру числа надо преобразовать в группу из трех двоичных цифр (триаду), а при преобразовании шестнадцатеричного числа - в группу из четырех цифр (тетраду).

Например, преобразуем дробное восьмеричное число А8 = 0,478 в двоичную систему счисления:

Восьмеричные цифры 4 7

Двоичные триады 100 111

Получаем: А2 = 0,1001112 .

Переведем целое шестнадцатеричное число А16 = АВ16 в двоичную систему счисления:

Шестнадцатеричные цифры А В

Двоичные тетрады 1010 1011

В результате имеем: А2

4,5(70 оценок)
Открыть все ответы
Ответ:
loveinyourhard
loveinyourhard
03.11.2022
int a = 0, b = 0, c = 0, d = 0;

do {
cout << "Введите размеры стола a>b: " << endl;
cin >> a >> b;
} while (b > 0 && a > b);

do {
cout << "Введите размеры прямоугольника c>d: " << endl;
cin >> c >> d;
} while (c > 0 && c > d);

int n1 = (a / c) * (b / d);
int n2 = (a / d) * (b / c);
cout << "Длинной вдоль длинной= " << n1 << " длинной вдоль короткой=
" << n2 << endl;
if (n1 > n2) {
cout << "Длинной стороной вдоль длинной больше" << endl;
}
else if (n2 > n1) {
cout << "Длинной стороной вдоль короткой больше" << endl;
}
else {
cout << "При разном расположении одинаково" << endl;
}
4,6(97 оценок)
Ответ:
Лучше скопировать код в текстовый файл - не уверен что тут он нормально будет читаться (много комментариев)
/*  Рассматривать будем независимо координаты X (с шириной) и Y (с высотой) * *  Варианты взаимного расположения одной координаты: * * 1) CD левее AB *            A       B *            || *  || *  C        D * * 2) CD пересекает слева AB *            A       B *            || *     || *     C        D * * 3) CD внутри AB *            A       B *            || *             || *             C     D * * 4) AB внутри CD *            A       B *            || *           || *           C         D * * 5) CD пересекает справа AB *            A       B *            || *               || *               C        D * * 6) CD правее AB *            A       B *            || *                      || *                      C        D */

///*  Вс функция  inside_coord() определяет, что координата первого  прямоугольника лежит полностью внутри второго.
  Параметры: координата и размер первого прямоугольника             координата и размер второго прямоугольника
  Возвращает: 1 если координата первого лежит полностью внутри второго или              0 если не полностью или вообще за пределами.  Фактически определяет имеем ли мы вариант 4 (см. выше).*/int inside_coord (int coord1, int size1, int coord2, int size2){   int A = coord1, B = coord1 + size1;   int C = coord2, D = coord2 + size2;
   /* проверяем вариант 4 */   if ((A >= C) && (B <= D)) {     return 1;   }   else  {     return 0;   }}
///*  Вс функция  intersect_coord() определяет, что координаты не пересекаются.  Параметры: координата и размер первого прямоугольника             координата и размер второго прямоугольника
  Возвращает: 1 если не пересекаются, 0 если хоть как-то              пересекаются.  Фактически определяет имеем ли мы вариант 1 или 6 (см. выше).*/int intersect_coord (int coord1, int size1, int coord2, int size2){   int A = coord1, B = coord1 + size1;   int C = coord2, D = coord2 + size2;
   /* проверяем вариант 1 или вариант 6 */   if ((D <= A) || (C >= B)) {     return 1;   }   /* проверяем вариант 6 */   else if (C >= B)  {     return 1;   }   else  {     return 0;   }}
//
/* Переменные содержащие координаты (x, y, ширина, высота) первого прямоугольника: */int x1, y1, width1, height1;/* Переменные содержащие координаты (x, y, ширина, высота) второго прямоугольника: */int x2, y2, width2, height2;

///* функция проверяющая, что все точки первого внутри второго * возвращает 1, если это так, 0 если не так. */int is_first_inside_second (void){int x_inside, y_inside;  /* проверка, что x полностью внутри */  x_inside = inside_coord (x1, width1, x2, width2);  /* проверка, что y полностью внутри */  y_inside = inside_coord (y1, height1, y2, height2);
  if ((x_inside) && (y_inside))  {    /* если x внутри И y внутри, то весь прямоугольник внутри */    return 1;  }  else  {    return 0;  }}
///* функция проверяющая, что все точки второго внутри первого * возвращает 1, если это так, 0 если не так. */int is_second_inside_first (void){int x_inside, y_inside;  /* проверка, что x полностью внутри */  x_inside = inside_coord (x2, width2, x1, width1);  /* проверка, что y полностью внутри */  y_inside = inside_coord (y2, height2, y1, height1);
  if ((x_inside) && (y_inside))  {    /* если x внутри И y внутри, то весь прямоугольник внутри */    return 1;  }  else  {    return 0;  }}
///* функция проверяющая, что все точки одного внутри второго * возвращает 1, если это так, 0 если не так. */int is_any_inside_any (void){  /* проверка что первый внутри второго или второй внутри первого */  if (is_first_inside_second() || is_second_inside_first())  {    return 1;  }  else  {    return 0;  }}
///* функция проверяющая, что прямоугольники пересекаются * возвращает 1, если это так, 0 если не так. */int is_intersection (void){int x_intersect, y_intersect;  /* проверка, что x вообще пересекаются хоть как-то */  x_intersect = intersect_coord (x1, width1, x2, width2);  /* проверка, что y вообще пересекаются хоть как-то */  y_intersect = intersect_coord (y1, height1, y2, height2);
  if ((x_intersect) && (y_intersect))  {    /* если x пересекаются И y пересекаются, прямоугольники пересекаются */    return 1;  }  else  {    return 0;  }}
4,7(48 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ