Decimal to Binary Kodu Sağdan Sola Yazdırma

Merhaba,
Ben built-in komutları kullanmadan aşağıdaki gibi basit bir decimal to binary kodu yazdım.

num = int(input("Please enter the number: "))
while num > 0:
if num % 2 == 1:
print(“1”)
if num % 2 == 0:
print(“0”)
num //= 2

Bu kod anlayabildiğiniz gibi yukarıdan aşağı doğru sıralıyor. Ben bunu built-in komutu kullanmadan nasıl sağdan sola doğru yazdırabilirim?

Merhaba.

Birdahakine kodlarınızı buraya göre atın:

Sayıları her seferinde yazdırmak yerine bir değişkende biriktirin. Değişkeni ve yeni karakteri istediğiniz sırayla toplayarak bunu yapabilirsiniz.

print fonksiyonlarındaki end patametresinden faydalanmayı bir deneyin isterseniz.

print("1", end="")
print("0", end="")

Şeklinde denemeler yapın.

Koddaki asıl problem o değil aslında, bu kod 6₁₀ yazınca 011₂ (3₁₀) çıktısı veriyor mesela:

num = int(input("Please enter the number: "))
while num > 0:
    if num % 2 == 1:
        print("1", end = "")
    if num % 2 == 0:
        print("0", end = "")
    num //= 2
Çözüm
num = int(input("Please enter the number: "))

s = ""
while num > 0:
    s = str(num % 2) + s # yeni string'i en başa ekliyoruz
    num //= 2
print(s)
1 Beğeni

Doğrudur, yan yana yazdırma konusunda yardım talep ettiği için önerdim.

1 Beğeni

Cevaplarınız için çok teşekkür ederim, sorunum çözülmüş oldu.
İyi günler.