Wykład nr 8 zadania
1. Stwórz pakiet zawierający moduły: jednostki_długości, jednostki_powierzchni,
jednostki_objętości. W każdym z tych modułów powinny być dwie funkcje, np. zaminiająca
cale na centymetry i zamieniająca centymetry na cale itp. Umieść w modułach Instrukcje
sprawdzające, czy zamiany są prawidłowe. Zagwarantuj, że testy te nie są wykonywane w
programach wykorzystujących te moduły.
2. Napisz definicję funkcji, która sprawdza, jaki procent tortu dostaje każdy z gości (podział ma
być sprawiedliwy, gospodarze nie jedzÄ…Jð). Liczba goÅ›ci jest parametrem tej funkcji. W
przypadku liczby gości równej zero obsłuż odpowiedni wyjątek.
3. Napisz definicję funkcji input_int, która która zachęca do podania liczby, wczytuje ją i zwraca.
Jeśli użytkownik zamiast liczby całkowitej poda coś innego, powinien być poinformowany o
błędzie i powinien mieć możliwość ponownego wpisania właściwych danych.
4. Napisz program, który liczy, ile dni upłynęło od początku roku do dzisiaj. Zdefiniuj wyjątek,
który jest powodowany (raised) wtedy, gdy rok jest przestępny, i użyj go w swoich
obliczeniach.
5. Napisz program, którego wykonanie może spowodować wystąpienie każdego z poniższych
wyjątków: OverflowError, ZeroDivisionError, IndexError, ValueError. Obsłuż te wyjątki,
wypisujÄ…c odpowiedni komunikat na ekranie.
6. Napisz definicję funkcji Fibonacciego metodą rekursji. Sprawdz szybkość działania tej funkcji
dla różnych wartości parametru, używając funkcji perf_counter z modułu time (podaje czas w
milisekundach). Sprawdz, co się dzieje, jeśli parametr jest równy 1000. Obsłuż odpowiedni
wyjątek. Sprawdz, jakie jest działanie konstrukcji:
except wyjÄ…tek as wyj:
print(wyj)