Rozwiązanie
Zadanie 4.3 – matura 2015, maj

Zadanie 4.3 (0-6)

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. Znajdź najmniejszą i największą liczbę w pliku liczby.txt. Jako odpowiedź podaj numery wierszy, w których się one znajdują.
Przykład: Dla zestawu liczb:
101011010011001100111
10001001011101010
1001000
101010011100
1000110
najmniejsza liczba to: 1000110
największa liczba to: 101011010011001100111
Prawidłowa odpowiedź dla powyższego przykładu to: 5, 1.
dane = ""
with open("DANE_PR2/liczby.txt") as f:
	dane = f.readlines()

i = 1
najw = 0
najm = 999999
najw_i = 0
najm_i = 0
for line in dane:
	line = line.strip()
	wd = int(line, 2)
	if wd > najw:
		najw = wd
		najw_i = i
	if wd < najm:
		najm = wd
		najm_i = i
	i += 1
print("4.3. Indeks najmniejszej liczby:", najm_i, "
Indeks najwiekszej liczby:", najw_i)
Pobierz rozwiązanie
Wytłumaczenie pojawi się niebawem.
Wyszukaj więcej zadań z tego arkusza...