Hej,
Mam zrobić zadanie i coś nie do końca m i działa ciąg, pod powiedziecie co należy w kodzie poprawić?
Ciąg A000069 (Odious numbers) tworzą liczby naturalne, które w zapisie binarnym mają nieparzystą liczbę cyfr 1. W odpowiedzi na podaną liczbę naturalną n:
(1) wyznacz i wypisz n początkowych wyrazów tego ciągu
(2) sumę n początkowych wyrazów tego ciągu
Przykład n=5, ciąg=1, 2, 4, 7, 8, suma = 22
print()
n=input("Podaj liczbe naturalna n: ")
print()
print(" Wyraz A000069 (Odious numbers) z przedziału [0,...,",n,"]: ",sep="")
suma=0
for i in range(int(n)+1):
if bin(i).count("1")%2 == 1:
suma+=i
print(i,end=" ")
print()
print()
print("Suma: ",suma)
print()
Wychodzi mi 1, 2,4 i suma 7 , a powinno być jak w przykładzie, co należy poprawić żeby ciąg działał prawidłowo ?