Poziom podstawowy Formuła 2007

Maj 2019

Materiały do pobrania

1_3.py
def algorytm2(s):
    n = len(s)

    r = [''] * n
    k = 0
    for i in range(n - 1, -1, -1):
        r[k] = s[i]
        k += 1

    ile = 0
    for i in range(n):
        if r[i] == s[i]:
            ile += 1
        else:
            break

    if ile == n:
        ile = ile // 2

    p = [''] * n
    for i in range(ile):
        p[i] = s[i]
        p[i + ile] = s[n + i - ile]

    return ile, p

print(algorytm2("abbcba"))
1_4.py
def algorytm2(s):
    n = len(s)

    r = [''] * n
    k = 0
    for i in range(n - 1, -1, -1):
        r[k] = s[i]
        k += 1

    ile = 0
    for i in range(n):
        if r[i] == s[i]:
            ile += 1
        else:
            break

    if ile == n:
        ile = ile // 2

    p = [''] * n
    for i in range(ile):
        p[i] = s[i]
        p[i + ile] = s[n + i - ile]

    if ile == n // 2:
        print("napis s jest palindromem")

    return ile, p


print(algorytm2("abcba"))
1.py
def algorytm1(s):
    ile = 0
    k = 0
    n = len(s)

    r = [''] * n

    for i in range(n - 1, -1, -1):
        r[k] = s[i]
        k += 1

    for i in range(n):
        if r[i] != s[i]:
            ile += 1
    return ile

print(algorytm1("aaaaabaaaaa"))
2_2.py
def czy_pierwsza(n):
    if n < 2:
        return "NIE"

    for i in range(2, n):
        if n % i == 0:
            return "NIE"

    return "TAK"

print(czy_pierwsza(4))
2_3.py
def dwa_kwadraty(n):
    for a in range(1, int(n**0.5) + 1):
        for b in range(1, int(n**0.5) + 1):
            if a**2 + b**2 == n:
                return a, b

print(dwa_kwadraty(29))
2.py
def czy_pierwsza(n):
    if n < 2:
        return False

    for i in range(2, n):
        if n % i == 0:
            return False

    return True

print(czy_pierwsza(37))
6_1.py
with open("dane.txt") as f:
    kobiet = 0
    mezczyzn = 0
    for i in f:
        i = i.strip()
        if int(i[9]) % 2 == 0:
            kobiet += 1
        else:
            mezczyzn += 1
print(f"Kobiet: {kobiet}, mężczyzn: {mezczyzn}")
6_2.py
with open("dane.txt") as f:
    liczba_osob_listopad = 0
    for i in f:
        miesiac = i[2]+i[3]
        if miesiac == "11" or miesiac == "31":
            liczba_osob_listopad += 1
print(liczba_osob_listopad)
6_3.py
with open("dane.txt") as f:

    for i in f:
        i = i.strip()

        suma = (1*int(i[0])+3*int(i[1])+7*int(i[2])+9*int(i[3])+1*int(i[4])+3*int(i[5])+7*int(i[6])+9*int(i[7])+1*int(i[8])+3*int(i[9])+int(i[10]))

        if suma % 10 != 0:
            print(i)
1_1.txt
n   s       r[0..n-1]   ile
5   abcba   abcba       0
6   abbcba  abcbba      2
1_2.txt
a) aaaaaabbbbb
b) aaaaaabbaaa
c) aaaaabaaaaa
1_3.txt
n   s       ile     p
5   abcba   2       abba
6   abbcba  2       abba
1_4.txt
jeżeli ile = n div 2 wypisz "napis s jest palindromem"
2_1.txt
n   Czy n jest liczbą pierwszą? Czy n przy dzieleniu przez 4 daje resztę 1? Rozkład n - suma kwadratów
5   tak                         tak                                         5 = 1^2 + 2^2
11  tak                         nie                                         -
13  tak                         tak                                         13 = 2^2 + 3^2
17  tak                         tak                                         17 = 1^2 + 4^2
29  tak                         tak                                         29 = 2^2 + 5^2
37  tak                         tak                                         37 = 1^2 + 6^2
3.txt
3_1: B
3_2: B
3_3: A
3_4: D
wyniki4.txt
4_1: 103

4_2: 298

4_3:
nr_pytania	liczba_odp
1			167
2			172
3			153
4			173
5			155
6			160

4_4:
nr_pytania	łatwość
1			0.234
2			0.308
3			0.255
4			0.312
5			0.432
6			0.288

4_5:
735284701
wyniki5.txt
5_1:
ID_publikacji	Tytul																Cena
e779		Programowanie Microsoft SQL Server 2008 Tom 1 i 2. Pakiet				132.99
e703		Zaawansowany Python. Jasne, zwiezle i efektywne programowanie			132.99
e1366		Programowanie Microsoft SQL Server 2012.								132.99
e1195		Zapytania w jezyku T-SQL. w Microsoft SQL Server 2014 i SQL Server 2012	132.99
a382		Trening mentalny sportowca kurs										66.99
a1609		Ekspresowy kurs dla poczatkujacych. Angielski.							47.99
a1255		Ekspresowy kurs dla poczatkujacych. Hiszpanski.						47.99
a1387		Ekspresowy kurs dla srednio zaawansowanych. Hiszpanski.				47.99
a1384		Ekspresowy kurs dla poczatkujacych. Wloski.							47.99
a1099		Ekspresowy kurs dla srednio zaawansowanych. Angielski.					47.99
a514		Ekspresowy kurs dla poczatkujacych. Francuski.							47.99
a1949		Ekspresowy kurs dla poczatkujacych. Niemiecki.							47.99
a657		Medytacja Kolorami.												45.99

5_2:
Autor									Tytul									Dziedzina
Drea Zigarmi, Ken Blanchard, Patricia Zigarmi	Jednominutowy menedzer i przywodztwo.	ekonomia
Brian Tracy								Zarzadzanie czasem.					ekonomia
Rafal Janus								Excel w praktyce, 8/14					
informatyka

5_3:
8.98 zł	ekonomia
31.99 zł	informatyka
22.81 zł	literatura faktu
15.97 zł	literatura piekna
12.77 zł	nauki humanistyczne
11.17 zł	nauki matematyczno-przyrodnicze
16.19 zł	nauki spoleczne

5_4:
Literatura piękna - 587

5_5:
Nick_klienta		kwota
Lucky			908.47
5dzientygodnia	13.97
wyniki6.txt
6_1: Kobiet: 442, mężczyzn: 558

6_2: 90

6_3:
72040163352
46020791664
93071087527
92011957236
91031889675
58082023664
55123056262
94080371827
88091348655