evsmorodina
?>

Даны два целых числа a и b (a < b вывести в порядке убывания все целые числа, расположенные между a и b (не включая числа a и b), а также количество n этих чисел. c++

Информатика

Ответы

sergei641
Алгоритм решения

Выводим через пробел все числа от b-1 до a+1. В цикле вывода можем считать количество таких чисел, а можем воспользоваться формулой b-a-1 (b-a = кол-во целых чисел от a до b-1 или от a+1 до b).


Код

#include <bits/stdc++.h>

using namespace std;


int main() {

   int a, b;

   cin >> a >> b;

   for (int i = b-1; i > a; --i)

       cout << i << " ";

   cout << endl << (b-a-1) << endl;

   return 0;

}

---------------------

Файл решения прикреплён.

Скворцов

Число 113: для него прямой, обратный и дополнительный коды совпадают, так как оно положительное.

113(10)=01110001(2)

Число (-36):

Прямой код: 36(10)=00100100(2)

Обратный код (код, в котором меняем 0 на 1, а 1 на 0 в прямом коде):

-36(10) - обратный код 11011011(2)

Дополнительный код (к младшему разряду обратного кода прибавляем 1):

-36(10) - дополнительный код 11011100(2) - это число -36 в доп.коде

Сложим 113+(-36) в двоичных кодах:

01110001(2)+11011100(2)=1 0100 1101(2). Старшую единицу отбрасываем, получаем:

01001101(2)=77(10)

Проверим: 113-36=77 в десятичной с/с

testovich1012
1. Шестнадцатиричное представление переводим в десятичное.
Записываем 4A98 в расширенной форме по степеням основания (т.е. 16 в нашем случае):
4A98.BC2_{16}=4\times 16^3+10\times 16^2+9\times 16^1+8\times 16^0+ \\ 11\times 16^{-1}+12\times 16^{-2}+2\times 16^{-3}= \\ 16384+2560+144+8+ \frac{11}{16}+ \frac{12}{256}+ \frac{2}{4096} =19096\frac{1505}{2048}}= \\ 19096.73486328125_{10}
2. Шестнадцатиричное представление переводим в восьмеричное.
Поскольку 16=2^4; \ 8=2^3, перевод удобно сделать через промежуточную двоичную систему.
Каждую шестнадцатиричную цифру заменяем четырьмя двоичными цифрами (так называемой тетрАдой).
0100 1010 1001 1000 . 1011 1100 0010 (2)
Разбиваем двоичное число на триАды (по три разряда) влево и вправо от десятичной точки и каждую триаду заменяем восьмеричной цифрой (они по написанию совпадают с десятичными). Если разрядов для триады не хватает, дополняем их нулями слева для целой части и справа для дробной.
100101010011000.10111100001 (2)= 100 101 010 011 000.101 111 000 010=
45230.5702(8)

ответ: 4A98.BC2(16)=19096.73486328125(10)=45230.5702(8)

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Даны два целых числа a и b (a < b вывести в порядке убывания все целые числа, расположенные между a и b (не включая числа a и b), а также количество n этих чисел. c++
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

VolkovaMaslova
korotinadasha07
diana-020
ekattatarenko
ivanrancev
Nikolai_oksana
o-lala88387
lebedevevgen
Алексеевич949
konstantin0112
atlantika7
gubernatorov00
Yuliya1693
yuraotradnov