Rozwiązanie
Zadanie 4.2 – matura 2015, maj

Zadanie 4.2 (0-3)

Liczby binarne
Liczby binarne
W pliku liczby.txt znajduje się 1000 liczb naturalnych zapisanych binarnie. Każda liczba zapisana jest w osobnym wierszu. Pierwsze pięć wierszy zawiera następujące liczby:
11010100111
11110111111011101
1010100111010100
1101111111111111111111010100101010101001
1010110011001101010011110101010101010111
Każda liczba binarna zawiera co najwyżej 250 cyfr binarnych, co oznacza, że w wielu językach programowania wartości niektórych z tych liczb nie da się zapamiętać w pojedynczej zmiennej typu całkowitoliczbowego, np. w języku C++ w zmiennej typu int.
Napisz program, który da odpowiedzi do poniższych zadań. Odpowiedzi zapisz w pliku
wynik4.txt, a każdą odpowiedź poprzedź numerem oznaczającym odpowiednie zadanie. Podaj, ile liczb w pliku liczby.txt jest podzielnych przez 2 oraz ile liczb jest podzielnych przez 8.
Przykład: Dla zestawu liczb:
101011010011001100000 (*), (**)
10001001
100100 (*)
101010010101011011000 (*), (**)
100011
trzy liczby są podzielne przez 2 (*) i dwie liczby są podzielne przez 8 (**).
dane = ""
with open("DANE_PR2/liczby.txt") as f:
	dane = f.readlines()

d8 = 0
d2 = 0
for line in dane:
	line = line.strip()
	if int(line, 2) % 2 == 0:
		d2 += 1
	if int(line, 2) % 8 == 0:
		d8 += 1
print("4.2 Liczb podzielnych przez 2:", d2, "
Liczb podzielnych przez 8:", d8)
Pobierz rozwiązanie
Wytłumaczenie pojawi się niebawem.
Wyszukaj więcej zadań z tego arkusza...