این برنامه پایتونی یک عدد صحیح را از کاربر دریافت کرده و تمام بیتهای آن را معکوس میکند.
برای این کار ابتدا طول بیت عدد محاسبه شده، سپس با استفاده از عملگر XOR با ماسک مناسب، تمام بیتها معکوس میشوند.
# دریافت عدد از کاربر
num = int(input("یک عدد صحیح وارد کنید: "))
# محاسبه تعداد بیتهای عدد
bit_length = num.bit_length()
# ساخت ماسک با تمام بیتهای ۱ به طول عدد
mask = (1 << bit_length) - 1
# معکوسکردن تمام بیتها با XOR
inverted = num ^ mask
# نمایش نتیجه
print("\n--- نتیجه ---")
print(f"عدد اولیه: {num} → دودویی: {bin(num)}")
print(f"عدد پس از معکوسکردن بیتها: {inverted} → دودویی: {bin(inverted)}")
یک عدد صحیح وارد کنید: 55
--- نتیجه ---
عدد اولیه: 55 → دودویی: 0b110111
عدد پس از معکوسکردن بیتها: 8 → دودویی: 0b01000
- عدد صحیح از کاربر دریافت میشود
- با استفاده از bit_length() طول بیت عدد محاسبه میشود
- ماسک با تمام بیتهای ۱ ساخته میشود
- با استفاده از عملگر XOR تمام بیتها معکوس میشوند
- نتیجه نهایی بهصورت عدد و نمایش دودویی چاپ میشود