W pierwszym zadaniu generujesz wszystkie kombinacje liczb i,j (k to klon i). Najłatwiej to zrobić za pomocą list comprehensions.
[(i,j,i) for i in range(2,6) for j in range(-1,2)]
Funkcja range(m,n) generuje listę, rozpoczynając od m-tego elementu do n-1-tego.
W trzecim zadaniu należy utworzyć słownik, którego klucze będą elementem z krotki, a jego wartością liczba zliczeń:
K=(1, 2, "ala", 1, "a", 1, 1, 3, "a", 3, 3, 3)
D = dict()
for i in K:
D[i] = K.count(i)
for i in D:
print i,"|",D[i]*"*"
W drugiej linii utworzyłem pusty słownik, dałem znać programowi, że to będzie ten typ zmiennej, dzięki czemu będę mógł mu nadać klucze i wartości. W trzeciej linii iterator i przechodzić kolejne wartości krotki, zliczając liczbę ich wystąpień za pomocą metody count(nazwa_argumentu). W czwartej linii wstawiam te wartości do słownika. Zauważ że nawet jeśli i=1 występuje w dalszej części krotki, to przypisanie D[i] = K.count(i) nadpisze poprzednią wartość, choć będzie ona taka sama. Ostatnia pętla to iterowanie po słowniku i wypisywanie par klucz-wartość. Ponadto gwiazdka jest wypisywana D[i] razy, czyli w Pythonie nie musisz pisać "xxxxx", by zrobić napis złożony z pięciu iksów. Wystarczy "x"*5.
Zadanie drugie spróbuj zrobić sam. Wygeneruj listę z losowymi liczbami. Przeczytaj na polskiej Wikipedii jak się definiuje medianę dla zbioru, który zawiera parzystą liczbę elementów. W Google wyszukaj następujące hasła, by móc zrobić to zadanie:
sort list python
enumerate list python
if python
Zdążysz do 10:00. Powodzenia!