Замена битов в числе и тетрады - Pascal

Узнай цену своей работы

Формулировка задачи:

1) Вводится число, (32-битное) порядковый номер бита в числе , и бит (0 или1) нужно заменить бит, номер которого мы введем на бит, который мы введем. Вывести новое число. 2) Вводится 32-битное число, и номер тетрады (4 бита) которые нужно вывести. Вообщем там получается всего 8 тетрад соответственно вводим мы число 5 и он выводит четыре бита пятой тетрады! Буду очень благодарна!

Решение задачи: «Замена битов в числе и тетрады»

textual
Листинг программы
{ 1) Вводится число, (32-битное) порядковый номер бита в числе , и бит (0 или1)
 нужно заменить бит, номер которого мы введем на бит, который мы введем. Вывести новое число. }
{ PascalABC.NET } 
var
  x, y   : Cardinal;
  bitN   : integer;
  bitVal : 0..1;
begin
  write('Число ');
  readln(x);
  write('Номер бита, начиная  справа с единицы ');
  readln(bitN);
  write('Значение бита (0/1) ');
  readln(bitVal);
  
  y:=x and Not((1-BitVal) shl (bitN-1));
  writeln(x, '->', y);
end.

Объяснение кода листинга программы

  1. Вводится число (32-битное)
  2. Вводится порядковый номер бита в числе
  3. Вводится значение бита (0 или 1)
  4. Выполняется замена бита в числе
  5. Выводится новое число

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы