Пронумеровать цифры в 1101 справа налево, начало отсчета это 0 (т.е. справа начинается 0, 1, 2, 3). Затем везде, где в двоичной записи стоят единицы, записать 2 в степени нумерации под этим числом (т.е. в 1101 под первой единицей нумерация 3, это 2^3, под второй единицей нумерация 2, это 2^2, затем ноль пропускаем, под последней единицей нумерация 0, это 2^0). Затем все складываем
Получится 2^3+2^2+2^0=8+4+1=13
Из десятичной в двоичную:
Делим число на 2 и замечаем остаток:
13/2=6, остаток 1.
6/2=3, остаток 0.
3/2=1, остаток 1.
Дальше делить не получится. Берем последнюю единицу, оставшуюся после деления, а затем записываем все остатки, начиная с конца: 1 1 0 1.
#include "pch.h"
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int n;
cout << "Введи количество чисел: "; cin >> n;
int a, b;
cout << "Введи левую границу (a): "; cin >> a;
cout << "Введи правую границу (b): "; cin >> b;
int *p = new int[n];
for (int i = 0; i < n; i++)
cin >> p[i];
for (int i = 0; i < n; i++)
{
if (p[i] <= b && p[i] >= a)
cout << " " << p[i];
}
delete[] p;
return 0;
}
В десятичной: 13
В двоичной: 1101
Объяснение:
Из двоичной в десятичную:
Пронумеровать цифры в 1101 справа налево, начало отсчета это 0 (т.е. справа начинается 0, 1, 2, 3). Затем везде, где в двоичной записи стоят единицы, записать 2 в степени нумерации под этим числом (т.е. в 1101 под первой единицей нумерация 3, это 2^3, под второй единицей нумерация 2, это 2^2, затем ноль пропускаем, под последней единицей нумерация 0, это 2^0). Затем все складываем
Получится 2^3+2^2+2^0=8+4+1=13
Из десятичной в двоичную:
Делим число на 2 и замечаем остаток:
13/2=6, остаток 1.
6/2=3, остаток 0.
3/2=1, остаток 1.
Дальше делить не получится. Берем последнюю единицу, оставшуюся после деления, а затем записываем все остатки, начиная с конца: 1 1 0 1.