RCTU8NHXC4TDV
Wąż pije kawę w kubku z napisem Witaj świecie

PYI_PY_W13_M06 Funkcje

Obraz wygenerowany przez sztuczną inteligencję Canva.ai
Źródło: domena publiczna.
Już wiesz
  • co to są funkcje i do czego służą,

  • jak korzystać z bibliotek i funkcji wbudowanych,

  • jak utworzyć i zapisać własną funkcję.

Teraz czas sprawdzić swoją wiedzę i umiejętności w praktyce.

Ćwiczenie 1

Napisz funkcję   powitanie(godzina) z jednym parametrem  (liczbą całkowitą od 0 do 23), która:

  • wypisze „Dzień dobry” jeśli godzina mieści się w przedziale 6–17,

  • wypisze „Dobry wieczór” jeśli godzina mieści się w przedziale 18–22,

  • wypisze „Dobranoc” w pozostałych przypadkach.

Wywołaj tę funkcję w programie.

Ćwiczenie 2

Napisz funkcję   max2**(a, b)** z dwoma parametrami  (liczby rzeczywiste), która wypisze większą z tych liczb lub komunikat „równe”.  Wywołaj tę funkcję w programie.

Ćwiczenie 3

Napisz funkcję, która sprawdzi, czy podana liczba całkowita jest liczbą parzystą i jednocześnie mniejszą od 100. Oba warunki powinny zostać sprawdzone w funkcji, która przyjmie jeden parametr – liczbę naturalną do sprawdzenia.

Ważne!

Twoim zdaniem jest wyłącznie zdefiniowanie odpowiedniej funkcji. Po uruchomieniu programu automatycznie zostanie on przetestowany dla następujących wartości: 88, 77, 102, 101.

Specyfikacja:

Dane:

  • liczba – sprawdzana liczba; liczba całkowita

Wynik:

Funkcja zwraca wartość logiczną True, gdy sprawdzana liczba jest parzysta oraz mniejsza od 100. W przeciwnym wypadku (gdy liczba nie spełnia co najmniej jednego warunku), funkcja zwraca wartość logiczną False.

RB6XhA6nOIwEW
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.

Twoje zadania:

Zdefiniowanie funkcji czy_parzysta_i_mniejsza_od_stu.

Funkcja zwraca wartość logiczną dla wartości 88.

Funkcja zwraca wartość logiczną dla wartości  77.

Funkcja zwraca wartość logiczną dla wartości 102.

Funkcja zwraca wartość logiczną dla wartości 101.

Linia 1. def czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu otwórz nawias okrągły liczba zamknij nawias okrągły dwukropek. Linia 2. kratka Tu uzupełnij kod. Linia 3. pass. Linia 5. at at at. Linia 6. language znak równości python37. Linia 7. at at at. Linia 8. Zdefiniowanie funkcji otwórz nawias ostrokątny code language znak równości cudzysłów python cudzysłów zamknij nawias ostrokątny czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny kropka. Linia 9. Funkcja zwraca wartość logiczną otwórz nawias ostrokątny code zamknij nawias ostrokątny True otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny dla wartości otwórz nawias ostrokątny code zamknij nawias ostrokątny 88 otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny kropka. Linia 10. Funkcja zwraca wartość logiczną otwórz nawias ostrokątny code zamknij nawias ostrokątny False otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny dla wartości otwórz nawias ostrokątny code zamknij nawias ostrokątny 77 otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny kropka. Linia 11. Funkcja zwraca wartość logiczną otwórz nawias ostrokątny code zamknij nawias ostrokątny False otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny dla wartości otwórz nawias ostrokątny code zamknij nawias ostrokątny 102 otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny kropka. Linia 12. Funkcja zwraca wartość logiczną otwórz nawias ostrokątny code zamknij nawias ostrokątny False otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny dla wartości otwórz nawias ostrokątny code zamknij nawias ostrokątny 101 otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny kropka. Linia 13. at at at. Linia 14. at at at. Linia 15. kratka po kodzie ucznia. Linia 16. kratka przede wszystkim helper do zapisu wyników. Linia 17. from sys import exit. Linia 18. import pickle. Linia 19. import os kropka path. Linia 21. wyniki znak równości otwórz nawias kwadratowy zamknij nawias kwadratowy kratka tablica zaliczonych wyników dwukropek otwórz nawias kwadratowy 0 przecinek 1 przecinek 2 przecinek kropka kropka kropka zamknij nawias kwadratowy. Linia 23. def podkreślnik zapisz podkreślnik wynik otwórz nawias okrągły lst zamknij nawias okrągły dwukropek. Linia 24. w znak równości cudzysłów cudzysłów cudzysłów. Linia 25. cudzysłów cudzysłów cudzysłów. Linia 26. for q in lst dwukropek. Linia 27. w plus znak równości str otwórz nawias okrągły q zamknij nawias okrągły plus chr otwórz nawias okrągły 10 zamknij nawias okrągły plus chr otwórz nawias okrągły 13 zamknij nawias okrągły. Linia 28. with open otwórz nawias okrągły 3 przecinek apostrof w apostrof zamknij nawias okrągły as f dwukropek. Linia 29. f kropka write otwórz nawias okrągły w zamknij nawias okrągły. Linia 31. kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka kratka. Linia 33. kratka teraz sprawdzenie przecinek czy istnieje funkcja o zdefiniowanej nazwie. Linia 34. kratka uwaga minus gdy więcej parametrów minus zamknij nawias ostrokątny ZMIENIĆ wykrzyknik wykrzyknik wykrzyknik wykrzyknik. Linia 36. passed znak równości False. Linia 37. try dwukropek. Linia 38. passed znak równości callable otwórz nawias okrągły czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu zamknij nawias okrągły. Linia 39. except NameError dwukropek. Linia 40. exit otwórz nawias okrągły 0 zamknij nawias okrągły. Linia 41. if passed dwukropek. Linia 42. wyniki kropka append otwórz nawias okrągły 0 zamknij nawias okrągły. Linia 44. kratka pierwszy rodzaj testu. Linia 46. wynik znak równości czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu otwórz nawias okrągły 88 zamknij nawias okrągły. Linia 47. if wynik is True dwukropek. Linia 48. wyniki kropka append otwórz nawias okrągły 1 zamknij nawias okrągły. Linia 50. wynik znak równości czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu otwórz nawias okrągły 77 zamknij nawias okrągły. Linia 51. if wynik is False dwukropek. Linia 52. wyniki kropka append otwórz nawias okrągły 2 zamknij nawias okrągły. Linia 54. wynik znak równości czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu otwórz nawias okrągły 102 zamknij nawias okrągły. Linia 55. if wynik is False dwukropek. Linia 56. wyniki kropka append otwórz nawias okrągły 3 zamknij nawias okrągły. Linia 58. wynik znak równości czy podkreślnik parzysta podkreślnik i podkreślnik mniejsza podkreślnik od podkreślnik stu otwórz nawias okrągły 101 zamknij nawias okrągły. Linia 59. if wynik is False dwukropek. Linia 60. wyniki kropka append otwórz nawias okrągły 4 zamknij nawias okrągły. Linia 63. kratka zapisuję wszystkie testy do pliku. Linia 64. podkreślnik zapisz podkreślnik wynik otwórz nawias okrągły wyniki zamknij nawias okrągły. Linia 66. at at at. Linia 67. kratka wykrzyknik prawy ukośnik usr prawy ukośnik bin prawy ukośnik python3 kropka 7. Linia 68. import sys. Linia 69. kratka tutaj ewentualne sprawdzenie wykonania skryptu ucznia przecinek czy zwraca poprawne wyniki. Linia 70. input znak równości sys kropka stdin kropka read otwórz nawias okrągły zamknij nawias okrągły kropka strip otwórz nawias okrągły zamknij nawias okrągły. Linia 71. kratka ale raczej tego nie będę używał kropka.
Ćwiczenie 4

Dla zainteresowanych

Napisz program, który rozwiąże podany układ dwóch równań metodą wyznaczników. Wypisz wyznaczone wartości x oraz y, rozdzielając je spacją. Jeśli układ nie ma rozwiązania, wypisz „Brak rozwiązania”, a jeśli ma ich nieskończenie wiele, wypisz: „Nieskończenie wiele rozwiązań”.

Swój program przetestuj dla układu równań:

Specyfikacja:

Dane:

  • uklad_rownan – lista składająca się z dwóch list zawierających odpowiednio: współczynniki liczbowe pierwszego układu równań oraz współczynniki liczbowe drugiego układu równań (w kolejności a, b, c); definicja układu równań

Wynik:

Program na standardowym wyjściu wypisuje rozwiązanie układu równań: wartości x oraz y (rozdzielone znakiem spacji). Jeżeli układ nie ma rozwiązań, program wyświetla komunikat: „Brak rozwiązania”. W przypadku, gdy układ równań ma nieskończenie wiele rozwiązań, program drukuje komunikat: „Nieskończenie wiele rozwiązań”.

Rj0N2X4ASGSV3
Wymyśl pytanie na kartkówkę związane z tematem materiału.

Twoje zadanie: Program rozwiązuje układ dwóch równań liniowych metodą wyznaczników.

Linia 1. def wyznacznik otwórz nawias okrągły uklad przecinek kolumna1 przecinek kolumna2 zamknij nawias okrągły dwukropek. Linia 2. kratka Tu uzupełnij kod. Linia 4. kratka Tu uzupełnij kod. Linia 6. kratka 2 kropka 0 asterysk x plus 3 kropka 0 asterysk y znak równości 5 kropka 0. Linia 7. kratka 4 kropka 0 asterysk x plus 3 kropka 0 asterysk y znak równości 3 kropka 0. Linia 8. uklad podkreślnik rownan znak równości otwórz nawias kwadratowy. Linia 9. otwórz nawias kwadratowy 2 kropka 0 przecinek 3 kropka 0 przecinek 5 kropka 0 zamknij nawias kwadratowy przecinek. Linia 10. otwórz nawias kwadratowy 4 kropka 0 przecinek 3 kropka 0 przecinek 3 kropka 0 zamknij nawias kwadratowy przecinek. Linia 11. zamknij nawias kwadratowy. Linia 13. kratka Tu uzupełnij kod. Linia 15. at at at. Linia 16. language znak równości python37. Linia 17. at at at. Linia 18. Program rozwiązuje układ dwóch równań liniowych metodą wyznaczników kropka. Linia 19. at at at. Linia 20. at at at. Linia 21. at at at. Linia 22. kratka wykrzyknik prawy ukośnik usr prawy ukośnik bin prawy ukośnik python3 kropka 7. Linia 23. import sys. Linia 24. podkreślnik podkreślnik TF znak równości open otwórz nawias okrągły 3 przecinek apostrof w apostrof zamknij nawias okrągły. Linia 25. def podkreślnik pt otwórz nawias okrągły t zamknij nawias okrągły dwukropek. Linia 26. print otwórz nawias okrągły str otwórz nawias okrągły t zamknij nawias okrągły przecinek file znak równości podkreślnik podkreślnik TF zamknij nawias okrągły. Linia 28. expected podkreślnik output znak równości cudzysłów cudzysłów cudzysłów. Linia 29. minus 1 kropka 0 2 kropka 3333333333333335. Linia 30. cudzysłów cudzysłów cudzysłów. Linia 32. if sys kropka stdin kropka read otwórz nawias okrągły zamknij nawias okrągły kropka strip otwórz nawias okrągły zamknij nawias okrągły znak równości znak równości expected podkreślnik output kropka strip otwórz nawias okrągły zamknij nawias okrągły dwukropek. Linia 33. podkreślnik pt otwórz nawias okrągły 0 zamknij nawias okrągły.