Laboratorium 6
Transkrypt
Laboratorium 6
Zadania z programowania w języku Python do wykładu 5 dr Andrzej Zbrzezny 1 Instrukcja warunkowa 1. Napisz program, który wczyta z klawiatury liczbę zmiennoprzecinkową i używając prostej instrukcji warunkowej wypisze na ekran wartość bezwzględną tej liczby. W tym programie nie należy używać funkcji wbudowanej abs. 2. Napisz funkcję sgn(x), która zwraca znak (inaczej: signum) swojego argumentu. (Znak liczby dodatniej jest równy 1, znak liczby ujemnej jest równy -1, a znak liczby 0 jest równy 0.) W funkcji main wczytaj liczbę zmiennoprzecinkową, a następnie wypisz na ekran jej znak. 3. Napisz program, który wczyta dwie liczby zmiennoprzecinkowe, a następnie wypisze wynik z dzielenia pierwszej przez drugą, o ile druga liczba jest różna od zera. Jeżeli dzielenie nie będzie możliwe, to należy wypisać na ekran odpowiedni komunikat. 4. Napisz program znajdujący pierwiastek równania liniowego ax+b = 0. W przypadku gdy a = 0, program powinien wypisać odpowiedni komunikat. 5. Napisz program, który wczyta trzy liczby zmiennoprzecinkowe, a następnie wypisze najmniejszą i największą liczbę. W tym programie nie należy używać funkcji wbudowanych min oraz max. 6. Napisz program rozwiązujący problem z poprzedniego zadania z wykorzystaniem funkcji max3(x, y, z). W tym programie także nie należy używać funkcji wbudowanych min oraz max. 7. Napisz program obliczający pole i obwód trójkąta o bokach wczytanych z klawiatury. W przypadku podania wartości, które nie mogą być bokami trójkąta ma zostać wyświetlony komunikat: „To nie są boki trójkąta! Kończę program.”. 8. Napisz program rozwiązujący problem z poprzedniego zadania z wykorzystaniem trzech funkcji: • poprawne_boki(a, b, c), która zwraca wartość True gdy jej argumenty mogą być bokami trójkąta; w przeciwnym przypadku funkcja ma zwrócić wartość False; • pole_trojkata(a, b, c); • obwod_trojkata(a, b, c). 2 Połączenie instrukcji iteracyjnej for i instrukcji warunkowej 1. Do każdego z poniższych punktów napisać odpowiedni program. W każdym z tych programów wczytać liczbę naturalną n, a następnie wczytując kolejno n liczb naturalnych obliczyć ile wśród wczytanych liczb jest takich, które: (a) są liczbami nieparzystymi (b) są podzielne przez 3 i niepodzielne przez 5 (c) są kwadratami liczby parzystej (d) spełniają warunek ak < ak−1 +ak+1 , 2 dla 1 < k < n (e) spełniają warunek 2k < ak < k!, dla 1 ≤ k ≤ n (f) mają nieparzysty numer (numerujemy od 1 do n) i są liczbami parzystymi (g) są nieparzyste i nieujemne (h) spełniają warunek |ak | < k 2 2. Wczytać liczbę naturalną n, a następnie wczytując kolejno n liczb rzeczywistych obliczyć podwojoną sumę tych spośród nich, które są dodatnie. 3. Wczytać liczbę naturalną n, a następnie wczytując kolejno n liczb rzeczywistych obliczyć ile jest wśród nich liczb dodatnich, liczb ujemnych oraz ile jest zer. 4. Wczytać liczbę naturalną n, a następnie wczytując kolejno n liczb rzeczywistych znaleźć najmniejszą oraz największą z wczytanych liczb. 5. Wczytać liczbę naturalną n, a następnie wczytując kolejno n liczb rzeczywistych znaleźć ilość sąsiadujących par (a, b) takich, że a > 0 i b > 0. (Przykład: dla liczby n = 6 i kolejnych liczb 3, 5, 2, −4, 9, 7 poprawna odpowiedź to 3 (pary (3, 5), (5, 2) oraz (9, 7))).