Skip to content

Zadanie maturalne z Python – „przedzialy.txt” – cz. 0 (wczytywanie danych)

Zadania maturalne są wymagające – tutaj chciałbym przedstawić jedno z nich – Przedziały.

Ten wpis będzie mieć kilka części, by powoli rozprawić się z tematem – zaczę od części zerowej, czyli wczytywania danych, które będę przerabiać w dalszych częściach.

Powyżej zrzut z arkusza maturalnego. Ma 3 punkty, na które należy odpowiedzieć, i po kolei postaram się pokazać moje dojście do rozwiązania.

Przede wszystkim musimy wczytać dane. Plik źródłowy wygląda w następujący sposób:

Musimy napisać funkcję, która sprawdzi znaki rozpoczynający i kończący dla opisu ciągu.

(-2,5>
Lista powinna wyglądać tak: [ -1, 0, 1, 2, 3, 4, 5 ]

Oczywiście musimy zdefiniować funkcję, która przetworzy linię i zwróci odpowiednią listę. Zwracam uwagę na odpowiednie zwiększenie zmiennych b, c – w zależności od tego, czy przedział jest otwarty, czy zamknięty. Zdefniowana funkcja może wyglądać tak:

def parsuj(od, do):
    a, b = od[0], int(od[1:])
    c, d = int(do[:-1]), do[-1]
    if a == "(":
        b += 1
    if d == ">":
        c += 1
    return [x for x in range(b, c)]

Pełny kod zamieszczam tu:

Published inPrzykłady zadańPython 3Założone przykłady

Comments are closed.