Poziom podstawowy Formuła 2007

Maj 2018

Materiały do pobrania

1_2.py
def odszyfrowanie(S):
    S = list(S)
    n = len(S)
    if n % 2 == 0:
        for i in range(0, n-1, 2):
            S[i], S[i+1] = S[i+1], S[i]
    else:
        S[0], S[n - 1] = S[n - 1], S[0]
        for i in range(0, n-1, 2):
            S[i], S[i+1] = S[i+1], S[i]

    return "".join(S)
print(odszyfrowanie("AGAIDZW"))
2.py
licznik = 0 # Do zadania 2_2
def algorytm(A):
    n = len(A)
    for i in range(n-1):
        m = i
        for j in range(i + 1, n):
            if A[m] < A[j]:
                m = j
        if i != m:
            A[i], A[m] = A[m], A[i]
            global licznik # Do zadania 2_2
            licznik += 1 # Do zadania 2_2
    return A

print(algorytm([1, 2, 3, 7, 8, 6, 7]))
print(licznik) # Do zadania 2_2
5_1.py
liczby_parzyste = []
with open("liczby.txt") as f:
    for line in f:
        line = int(line.strip())
        if line % 2 == 0:
            liczby_parzyste.append(line)

print(max(liczby_parzyste))
5_2.py
liczby_palindromiczne = []
with open("liczby.txt") as f:
    for line in f:
        line = line.strip()
        if line == line[::-1]:
            liczby_palindromiczne.append(line)

for liczba in liczby_palindromiczne:
    print(liczba)
5_3.py
liczby_wieksze_30 = []
suma_wszystkich = []
with open("liczby.txt") as f:
    for line in f:
        line = list(map(int, line.strip()))

        if sum(line) > 30:
            liczby_wieksze_30.append(line)

        suma_wszystkich.append(sum(line))
print(sum(suma_wszystkich))

for liczba in liczby_wieksze_30:
    liczba = int("".join(map(str, liczba)))
    # print(liczba)

1_1.txt
KONFIGURACJA
KONSTELACJA
2_1.txt
3   3
6   15
k   (k*(k-1))/2
2_2.txt
A[1..n] - tablica posortowana malejąco

A                   Liczba wykonań instrukcji zamiany
[9, 5, 3, 2]        2
[4, 4, 4, 4, 2]     4
[6, 5, 4, 3, 2, 1]  3
2_3.txt
[1, 2, 3, 7, 8, 6, 7]
3.txt
3_1: C
3_2: B
3_3: C
3_4: A
3_5: C
wyniki4.txt
4_1:
Druzyna	    Liczba_harcerzy
Bukowina	26
Grot	    12
Jaworzyna	49
Plomien	    16
Watra	    14
Wierchy	    42
Zawisza	    11
Zywioly	    17

4_2:
Najwięcej: tropiciel
Najmniej: ratownik

4_3:
Mateusz Buczek:
goral
ratownik
spadochroniarz
strzelec
tropiciel
zeglarz

Kamil Banasiewicz:
goral
ratownik
spadochroniarz
strzelec
tropiciel
zeglarz

4_4:
Zywioly

4_5:
Jozef	Piotrkowski	zeglarz	15
wyniki5.txt
5_1:
29966

5_2:
787
25152
16161
16261
15351
252
25752
11211
66
20802
7007
0
989
10101
27172
696
8888
55
14841
10101

5_3:
Liczby których suma > 30:
8887
18895
4999
29885
28788
28859
28986
19976
29888
28869
18797
28998
24989
29966
25978
28798
27998
8987
19579
27589
5999
9499
9959
29983
8888
28678
6989
19998

Suma wszystkich cyfr w pliku: 18560
wyniki6.txt
6_1:
Miesiąc	Liczba_kilogramow
Jan	    5343
Feb	    4966
Mar	    4895
Apr	    3446
May	    3222
Jun	    2984
Jul	    3262
Aug	    4128
Sep	    4826
Oct	    4558
Nov	    5502
Dec	    3771

Wykres: 6_1.png

6_2:
Kamila	Wolan	201kg

6_3:
51

6_4:
Pierwszy raz: 31/01/2017
Ile razy w roku: 18