В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
milenasalikova
milenasalikova
06.07.2020 02:31 •  Информатика

С++ Условие
Даны два числа N и K. Требуется изменить число N так, чтобы в K-м бите этого числа в двоичной системе счисления цифра изменилась на обратную (ноль на единицу, а единица — на ноль), а все остальные разряды остались неизменными.

В задаче запрещено использовать арифметические операции +, -, *, / и %, а также операторы if / switch и тернарную операцию.

Формат входных данных
В одной строке вводятся два целых числа N и K (0 ⩽ K ⩽ 30, 0 ⩽ N < 231). Разряды нумеруются от младшего к старшему начиная с нуля.

Формат выходных данных
Требуется вывести одно целое число ­— ответ на задачу.
входные данные выходные данные
21 1 23

Показать ответ
Ответ:
dianka27091987
dianka27091987
07.12.2021 12:11

Відповідь:

#include <iostream>

#include<cmath>

using namespace std;

int main()

{unsigned short N,K;

cin>>N>>K;

K=pow(2,K);

N^=K;

cout<<N;

return 0;

}

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