Laboratorium 6
Transkrypt
Laboratorium 6
Zadania z programowania w języku Python dr Andrzej Zbrzezny Instrukcja iteracyjna while Zadania obowiązkowe oznaczone są na czerwono. 1 Proste iteracje 1. Wczytać liczbę naturalną do zmiennej n. Do każdego z poniższych punktów napisać program, który obliczy wartość podanego w tym punkcie wyrażenia: (a) 2n (b) n! (c) (1 + (d) 1 ) 12 1 1 + sin 1 · (1 + + 1 ) 22 · . . . · (1 + 1 sin 1 + sin 2 + ... + 1 ) n2 1 sin 1 + ... + sin n 2. Wczytać liczbę naturalną do zmiennej n oraz liczbę rzeczywistą do zmiennej a. Do każdego z poniższych punktów napisać program, który obliczy wartość podanego w tym punkcie wyrażenia: (a) an (b) a · (a + 1) · . . . · (a + n − 1) (c) 1 a + 1 a·(a+1) (d) 1 a + 1 a2 + + ... + 1 a4 1 a·(a+1)·...·(a+n) + ... + 1 a2n (e) a · (a − n) · (a − 2n) · . . . · (a − n2 ) 3. Wczytać liczbę rzeczywistą do zmiennej x. Do każdego z poniższych punktów napisać program, który obliczy wartość podanego w tym punkcie wyrażenia: 5 7 9 11 x3 + x5! − x7! + x9! − x11! 3! (x − 2)·(x − 4)(x − 8)·...·(x − 64) (x − 1)·(x − 3)·(x − 7)·...·(x − 63) (a) x − (b) + x13 13! (c) sin x + sin2 x + . . . + sinn x (d) sin x + sin x2 + . . . + sin xn (e) sin x + sin sin x + . . . + sin sin . . . sin x 4. Wczytać liczbę rzeczywistą do zmiennej a. Do każdego z poniższych punktów napisać program odpowiedni program: (a) spośród liczb postaci 1, 1 + 21 , 1 + 12 + 31 , . . . znaleźć najmniejszą liczbę większą od a (b) znaleźć najmniejszą liczbę n, taką że 1 + 12 + 31 + . . . + 1 n >a 5. Wczytać liczbę naturalną do zmiennej n. Do każdego z poniższych punktów napisać odpowiedni program: (a) Obliczyć ilość cyfr w liczbie n. (Przykład: dla liczby n = 1989 poprawną odpowiedzią jest liczba 4) (b) Obliczyć sumę cyfr liczby n. (Przykład: dla liczby n = 1989 poprawną odpowiedzią jest liczba 27) (c) Znaleźć najbardziej znaczącą cyfrę liczby n. (Przykład: dla liczby n = 1989 poprawną odpowiedzią jest liczba 1) 6. Wczytać dwie liczby naturalne do zmiennychj m i n. Obliczyć sumę m najmniej znaczących cyfr liczby n. (Przykład: dla liczb m = 2 i n = 1989 poprawną odpowiedzią jest liczba 17, a dla liczb m = 5 i n = 1989 komunikat Niepoprawne dane) 7. Wczytać liczbę naturalną do zmiennej n. Sprawdzić czy liczba n jest liczbą pierwszą. 8. Wczytać dwie liczby naturalne do zmiennych m i n. Wypisać wszystkie liczby pierwsze p, takie że m ≤ p ≤ n. 9. Wczytać dwie liczby naturalne do zmiennychj m i n. Obliczyć ile jest liczb pierwszych p, takich że m ≤ p ≤ n. 2 Iteracyjne wczytywanie danych 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 rzeczywistych obliczyć wartość odpowiednich wyrażeń: (a) a1 + a2 + . . . + an (b) a1 · a2 · . . . · an (c) |a1 | + |a2 | + . . . + |an | (d) |a1 | · |a2 | · . . . · |an | (e) a21 + a22 + . . . + a2n (f) a1 + a2 + . . . + an oraz a1 · a2 · . . . · an (g) a1 − a2 + a3 − . . . + (−1)n+1 · an (h) − a1!1 + a2 2! − ... + (−1)n ·an n! 2. Wczytać liczbę naturalną n, a następnie wczytując kolejno ciąg n liczb rzeczywistych a1 , a2 , . . . , an wypisać ciąg a2 , a3 , . . . , an , a1 . 3 Połączenie instrukcji iteracyjnej i 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 k (e) spełniają warunek 2 < 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 sposró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))).