merhaba.ikilik tabandan onluk tabana,onluk tabandan ikilik tabana dönüştürme işlemi yapan bir program yazdım.Bu kısım sorunsuz çalışıyor. İkilik tabandan onluk tabana çevirme seçeneğinde kullanıcı tarafından girilen sayının yalnızca 0 ve 1 içerip içermediği kontrol edilmeli, girilen sayı uygun olana dek
kullanıcıdan sayı istenmeye devam edilmesini istiyorum ama başaramadım.Nasıl yapacağımla ilgili bir fikriniz var mı?( Basit olduğunun farkındayım ama yapamadım işte lütfen linçlemeyin.Öğrenmek istiyorum sadece.)
a = 1
yenisayi = ""
while True:
print("1- Ikilik tabandan onluk tabana cevirme")
print("2- Onluk tabandan ikilik tabana cevirme")
print("3- Cikis")
secim = int(input("Lutfen yapmak istediğiniz islemi giriniz:"))
if secim == 1:
z = (input("Lutfen cevirmek istediğiniz sayiyi giriniz:"))
uzunluk = len(z)
for i in z:
if i != 0 or i != 1:
print("Lutfen ikilik sayi sistemine uygun bir deger giriniz.")
continue
alinansayi = int(z)
basamak = 0
toplam = 0
while alinansayi > 0:
basamak += 1
alinansayi = alinansayi // 10
for a in range(basamak):
k = int(z[a])
toplam += k * (2 ** (basamak - a - 1))
print("Onluk tabandaki degeri:", toplam)
if secim == 2:
sayi = int(input("Lutfen cevirmek istediğiniz sayiyi giriniz:"))
while sayi:
yenisayi = str(int(sayi) % 2) + yenisayi
sayi = sayi // 2
print(yenisayi)
yenisayi = ""
if secim == 3:
print("Cikiliyor")
break
“0 ve 1 içerip içermediği kontrol edilmeli” bunun için
a=int(input())
print(type(a))
b=str(a)
print(type(b))
liste=[]
for i in range(len(b)) :
print(b[i])
liste.append((b[i]))
print(liste)
if "0" or "1" in liste:
print("sayı içinde 0 ve ya 1 var")
else:
print("sayı içinde 0 veya 1 yok")
yenisayi = ""
kontrol=1
while True:
print("1- Ikilik tabandan onluk tabana cevirme")
print("2- Onluk tabandan ikilik tabana cevirme")
print("3- Cikis")
secim = int(input("Lutfen yapmak istediğiniz islemi giriniz:"))
if secim == 1:
z = (input("Lutfen cevirmek istediğiniz sayiyi giriniz:"))
while True:
for i in z:
if int(i) != 0 and int(i) != 1:
kontrol=0
if kontrol==0:
print("Lutfen ikilik sayi sistemine uygun bir deger giriniz.")
break
if kontrol == 1:
ar = [int(i) for i in z]
ar = ar[::-1]
res = []
for i in range(len(ar)):
res.append(ar[i] * (2 ** i))
sum_res = sum(res)
print('Decimal Number is : ', sum_res)
break
if secim == 2:
sayi = int(input("Lutfen cevirmek istediğiniz sayiyi giriniz:"))
while sayi:
yenisayi = str(int(sayi) % 2) + yenisayi
sayi = sayi // 2
print(yenisayi)
yenisayi = ""
if secim == 3:
print("Cikiliyor")
break