Compare commits

...

4 Commits

Author SHA1 Message Date
Weranda
e067a250ea zadania E 2024-01-02 16:07:53 +01:00
Weranda
b2762576a2 Merge https://github.com/duszekjk/jezykiformalne 2024-01-01 17:54:54 +01:00
Jacek Kałużny
2a11de62de
Add files via upload 2023-12-11 11:42:57 +01:00
Jacek Kałużny
f0b3128a5d
Add files via upload 2023-12-11 11:41:28 +01:00
119 changed files with 301916 additions and 0 deletions

13
TaskE04/run.py Normal file
View File

@ -0,0 +1,13 @@
import re
def analyze_line(line):
phone_pattern = re.compile(r'^555-\d{3}-\d{3}$|^555\s\d{3}\s\d{3}$')
if phone_pattern.match(line):
print('yes')
else:
print('no')
with open('test.in', 'r') as file:
for line in file:
analyze_line(line.rstrip())

View File

@ -10,3 +10,5 @@
556 345 667 556 345 667
556 345 6675 556 345 6675
556 345-667 556 345-667
555 555 555
555 555 555

28
TaskE11/run.py Normal file
View File

@ -0,0 +1,28 @@
import re
def check_divisibility(line):
# Sprawdzanie, czy napis jest zapisany dziesiętnie i czy jest podzielny przez 4
decimal_pattern = re.compile(r'^0$|^[1-9][0-9]*$')
if decimal_pattern.match(line) and int(line) % 4 == 0:
return 'yes'
# Sprawdzanie, czy napis jest zapisany szesnastkowo i czy jest podzielny przez 4
hex_pattern = re.compile(r'^0x[1-9A-F]+$|^0x0$')
if hex_pattern.match(line) and int(line, 16) % 4 == 0:
return 'yes'
return 'no'
def main(file_path):
try:
with open(file_path, 'r') as file:
for line in file:
line = line.rstrip('\n')
result = check_divisibility(line)
print(result)
except FileNotFoundError:
print(f'File "{file_path}" not found.')
file_path = 'test.in'
main(file_path)

40
TaskE21/description.txt Normal file
View File

@ -0,0 +1,40 @@
Koński łeb
==========
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest napisem złożonym z
ciągu 5 wielkich liter i 4 wielkich liter oddzielonych spacją, które
wstukane na standardowym telefonie dadzą taki sam numer jak przy wstukaniu
napisu "HORSE HEAD". Zakładamy standardowe mapowanie liter na cyfry w
telefonie ("ABC" - 2, "DEF" - 3 itd.)
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string consists of 5 capital letters
and 4 lower case letter separated by space, which written on
an old cell phone keyboard gives the same number as typing "HORSE HEAD".
We assume standard old phone keyboard mapping ("ABC" - 2, "DEF" - 3, etc.)
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 21.
Attention. The task is for students whose students id remainder of the division by 27 is 21.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 21/27

9
TaskE21/test.exp Normal file
View File

@ -0,0 +1,9 @@
no
no
no
yes
yes
no
no
no
no

9
TaskE21/test.in Normal file
View File

@ -0,0 +1,9 @@
0MORSE HEAD
AAAAA BBBB
AAAAAA BBBB
GOSRE IDAD
HORSE HEAD
MORSE HEAD
MORSEHEAD
ZOSRE IDAD
morse head

36
TaskE22/description.txt Normal file
View File

@ -0,0 +1,36 @@
Wynik meczu
===========
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje wynik meczu
piłkarskiego (dwie liczby oddzielone dwukropkiem). Maksymalna (sumaryczna)
liczba bramek wynosi 10.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string stands for a soccer match result
(two numbers separated by a colon). The Maximum (sum of two teams) number of goals is 10.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 22.
Attention. The task is for students whose students id remainder of the division by 27 is 22.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 22/27

11
TaskE22/test.exp Normal file
View File

@ -0,0 +1,11 @@
yes
yes
no
yes
no
no
no
yes
yes
no
no

11
TaskE22/test.in Normal file
View File

@ -0,0 +1,11 @@
0:7
10:10
11:2
2:1
3
3:101
5-5
5:2
5:5
:3
xxxx

36
TaskE23/description.txt Normal file
View File

@ -0,0 +1,36 @@
Wiek człowieka
==============
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje wiek człowieka,
tzn. jest postaci typu "45 lat". Maksymalny wiek - 99 lat.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string stands for human age (is in
form of "45 lat"). The maximum age is 99 years.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 23.
Attention. The task is for students whose students id remainder of the division by 27 is 23.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 23/27

14
TaskE23/test.exp Normal file
View File

@ -0,0 +1,14 @@
yes
no
yes
no
yes
no
yes
no
yes
yes
yes
yes
yes
yes

14
TaskE23/test.in Normal file
View File

@ -0,0 +1,14 @@
1 rok
100 lat
11 lat
112 lat
12 lat
12 lata
2 lata
22 lat
22 lata
3 lata
4 lata
44 lata
5 lat
99 lat

40
TaskE24/description.txt Normal file
View File

@ -0,0 +1,40 @@
Imię i nazwisko mężczyzny.
==========================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje imię i nazwisko
mężczyzny. Imię i nazwisko to przynajmniej dwuliterowy napis zaczynający
się wielką literą, po której następują małe litery. Dodatkowo imię nie może
kończyć się na "a".
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string stands for the first name and last name
of a man. First name and last name are at least two character string
starting with the capital letter, followed by lower case letter.
Additionally, the First name can not finish with "a".
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 24.
Attention. The task is for students whose students id remainder of the division by 27 is 24.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 24/27

8
TaskE24/test.exp Normal file
View File

@ -0,0 +1,8 @@
no
yes
yes
yes
yes
no
yes
yes

8
TaskE24/test.in Normal file
View File

@ -0,0 +1,8 @@
Aa Ax
Ai Oi
Atanazy Bazakbal
Ax Aa
Jan Maska
Joanna Kowalska
Kim Bo
Oo Oo

39
TaskE25/description.txt Normal file
View File

@ -0,0 +1,39 @@
Imię i nazwisko kobiety.
========================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje imię i nazwisko
kobiety. Imię i nazwisko to przynajmniej dwuliterowy napis zaczynający się
wielką literą, po której następują małe litery. Dodatkowo imię musi kończyć
się na "a".
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string stands for the first name and last name
of a woman. First name and last name are at least two character string
starting with the capital letter, followed by lower case letter.
Additionally, the First name must finish with "a".
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 25.
Attention. The task is for students whose students id remainder of the division by 27 is 25.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 25/27

9
TaskE25/test.exp Normal file
View File

@ -0,0 +1,9 @@
yes
no
no
no
no
yes
no
no
yes

9
TaskE25/test.in Normal file
View File

@ -0,0 +1,9 @@
Aa Ax
Ai Oi
Atanazy Bazakbal
Ax Aa
Jan Maska
Joanna Kowalska
Kim Bo
Oo Oo
Za Mysz

38
TaskE26/description.txt Normal file
View File

@ -0,0 +1,38 @@
Liczba całkowita
================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje liczbę
całkowitą. Liczba nie powinna zawierać zer nieznaczących. Liczby dodatnie
mogą opcjonalnie zaczynać się plusem.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is an integer.
The number should not contain leading zeros. Positive numbers
can optionally start with a plus character.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 26.
Attention. The task is for students whose students id remainder of the division by 27 is 26.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 26/27

11
TaskE26/test.exp Normal file
View File

@ -0,0 +1,11 @@
no
yes
no
yes
yes
yes
no
no
yes
yes
yes

11
TaskE26/test.in Normal file
View File

@ -0,0 +1,11 @@
+0
+5
-0
-11110
-5
0
03434343435
06
100
3434343435
5

38
TaskE27/description.txt Normal file
View File

@ -0,0 +1,38 @@
Liczba mniejsza niż 144
=======================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje liczbę
całkowitą nieujemną mniejszą niż 143. Liczba nie powinna zawierać zer
nieznaczących.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string check, if the given string stands for
non-negative integer lower than 143. The number should not
contain leading zeros.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 0.
Attention. The task is for students whose students id remainder of the division by 27 is 0.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 0/27

13
TaskE27/test.exp Normal file
View File

@ -0,0 +1,13 @@
no
yes
no
no
no
yes
yes
yes
no
no
yes
yes
yes

13
TaskE27/test.in Normal file
View File

@ -0,0 +1,13 @@
-1
0
05
098
1000
103
139
142
143
144
5
78
99

38
TaskE28/description.txt Normal file
View File

@ -0,0 +1,38 @@
Nazwą domenową.
===============
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje nazwę domenową.
Zakładamy, że nazwa domenowa składa się z 2 lub 3 członów oddzielonych
kropkami. Każdy człon to ciąg małych liter.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string stands for a domain name.
We assume, that the domain names consist of 2 or 3 digits
separated by dots. Every element is a sequence of lower case letters.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 1.
Attention. The task is for students whose students id remainder of the division by 27 is 1.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 1/27

9
TaskE28/test.exp Normal file
View File

@ -0,0 +1,9 @@
yes
no
no
no
yes
yes
no
yes
yes

9
TaskE28/test.in Normal file
View File

@ -0,0 +1,9 @@
bla.pl
bla1.pl
foo..tv
foo.pl.
foo.tv
www.bla.pl
www.haha.bla.pl
x.y.z
z.z

36
TaskE29/description.txt Normal file
View File

@ -0,0 +1,36 @@
Identyfikator
=============
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest identyfikatorem
(ciągiem liter, cyfr i podkreślników nie zaczynających się cyfrą).
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is an id (sequence of letters, digits
and underscores starting with a digit).
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 2.
Attention. The task is for students whose students id remainder of the division by 27 is 2.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 2/27

11
TaskE29/test.exp Normal file
View File

@ -0,0 +1,11 @@
no
no
no
yes
yes
yes
yes
yes
yes
yes
yes

11
TaskE29/test.in Normal file
View File

@ -0,0 +1,11 @@
%haha%
0zmienna
2
Gitorah
_2
_____
_a_
blo_34a
godzilla
x
z0000000

36
TaskE30/description.txt Normal file
View File

@ -0,0 +1,36 @@
Temperatura
===========
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest liczbą całkowitą
zakresu od -49 do 49. Liczba nie powinna zawierać zer nieznaczących.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is an integer from -49 to 49.
The integer should not contain leading zeros.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 3.
Attention. The task is for students whose students id remainder of the division by 27 is 3.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 3/27

11
TaskE30/test.exp Normal file
View File

@ -0,0 +1,11 @@
no
yes
yes
no
yes
yes
no
yes
yes
no
yes

11
TaskE30/test.in Normal file
View File

@ -0,0 +1,11 @@
-200
-21
-49
-50
-9
0
100
18
49
50
7

37
TaskE31/description.txt Normal file
View File

@ -0,0 +1,37 @@
Jedna samogłoska
================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest wyrazem zawierającym
dokładnie jedną samogłoskę. Należy uwzględnić małe litery alfabetu
łacińskiego.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is an expression containing
exactly one vowel. You should consider lower case Latin alphabet letters.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 4.
Attention. The task is for students whose students id remainder of the division by 27 is 4.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 4/27

9
TaskE31/test.exp Normal file
View File

@ -0,0 +1,9 @@
no
no
yes
no
no
no
yes
no
yes

9
TaskE31/test.in Normal file
View File

@ -0,0 +1,9 @@
223
aa
dom
html
ostrach
puko
strach
strachy
u

38
TaskE32/description.txt Normal file
View File

@ -0,0 +1,38 @@
Suma w dolarach
===============
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis wyraża sumę w dolarach, tj.
zaczyna się znakiem dolara, po którym następuje liczba dodatnia (bez zer
nieznaczących).
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string stands for an amount of dollar,
starting with a dollar character followed by a positive integer
(with no leading zeros).
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 5.
Attention. The task is for students whose students id remainder of the division by 27 is 5.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 5/27

8
TaskE32/test.exp Normal file
View File

@ -0,0 +1,8 @@
no
no
yes
yes
yes
yes
no
no

8
TaskE32/test.in Normal file
View File

@ -0,0 +1,8 @@
$
$0098
$1
$100
$67592234
$89
10$100
89

37
TaskE33/description.txt Normal file
View File

@ -0,0 +1,37 @@
DNA
===
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest niepustym ciągiem liter
A, G, C, T, U, przy czym w jednym ciągu może wystąpić albo T, albo U nie
obie litery równocześnie.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string check, if the string is a non-empty sequence of letters
A, G, C, T, U. In one sequence, there can be T or U, but not bout simultaneously.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 6.
Attention. The task is for students whose students id remainder of the division by 27 is 6.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 6/27

10
TaskE33/test.exp Normal file
View File

@ -0,0 +1,10 @@
no
yes
yes
yes
yes
yes
no
no
yes
no

10
TaskE33/test.in Normal file
View File

@ -0,0 +1,10 @@
89
AAAAA
AGCTTGGAAACT
AGCUUGGAAACU
G
TAT
TAU
UAT
UAU
aaa

38
TaskE34/description.txt Normal file
View File

@ -0,0 +1,38 @@
Hmmmmm
======
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis to "hmmm....." - 'm'
występuje 2 lub więcej razy, kropki są opcjonalne, ale jeśli występują
muszą wystąpić przynajmniej 3 razy.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, if the string is "hmmm....." - 'm' occurs
two times or more. Dots are optional, but if occur, they must
occur at least 3 times.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 7.
Attention. The task is for students whose students id remainder of the division by 27 is 7.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 7/27

11
TaskE34/test.exp Normal file
View File

@ -0,0 +1,11 @@
no
no
no
yes
yes
no
no
yes
yes
no
no

11
TaskE34/test.in Normal file
View File

@ -0,0 +1,11 @@
ahmmmm.....
hhmmm.....
hm.....
hmm
hmm...
hmmm.
hmmm..
hmmm....
hmmmm......
hmmmm.....?!
mmm....

38
TaskE35/description.txt Normal file
View File

@ -0,0 +1,38 @@
Lalalo!
=======
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest śpiewem, tj. jest
ciągiem sylab "li", "la", "lo" (co najmniej dwóch), po którym następuje
opcjonalny ciąg wykrzykników.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is singing, this is
sequence of syllables "li", "la", "lo" (at least 2), followed
by an optional sequence of exclamation marks.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 8.
Attention. The task is for students whose students id remainder of the division by 27 is 8.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 8/27

8
TaskE35/test.exp Normal file
View File

@ -0,0 +1,8 @@
no
yes
yes
yes
no
yes
no
no

8
TaskE35/test.in Normal file
View File

@ -0,0 +1,8 @@
!!lala!!
lala
lilala!!!
lilili!!!!
lol
lololali!
luli
ola!

34
TaskE36/description.txt Normal file
View File

@ -0,0 +1,34 @@
Minuty
======
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć minuty z podanego napisu reprezentującego
godzinę w formacie typu "9:13", "18:44" wyciąga minuty. Funkcja powinna
zwracać napis "<NONE>", jeśli podany napis nie jest godziną. Jeśli napis
nie spełnia podanych warunków, należy wypisać "<NONE>".
For each string, extract the minutes from the given string represented
by time in "9:13", "18:44" format. The function should return "<NONE>"
string, if the string is not a time.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 27 z resztą 9.
Attention. The task is for students whose students id remainder of the division by 27 is 9.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 9/27

7
TaskE36/test.exp Normal file
View File

@ -0,0 +1,7 @@
00
44
59
<NONE>
13
<NONE>
<NONE>

7
TaskE36/test.in Normal file
View File

@ -0,0 +1,7 @@
0:00
18:44
23:59
25:14
9:13
9:61
x9:13y

37
TaskE37/description.txt Normal file
View File

@ -0,0 +1,37 @@
Numer kierunkowy
================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć numer kierunkowy z numeru telefonu.
Zakładamy, że numer kierunkowy jest dwucyfrowy, musi być poprzedzony zerem
lub plusem. Pozostała część numeru to 7 cyfr zapisanych w postaci N-NNN-NNN
bądź NNN-NN-NN. Jeśli napis nie spełnia podanych warunków, należy wypisać
"<NONE>".
For each string, extract an area code from the phone number.
We assume, that the phone number is two digits, is preceded by zero or plus.
The rest of the phone number is 7 digits written in N-NNN-NNN
or NNN-NN-NN form.
If the string does not fulfill the condition, you should print "<NONE>".
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 2.
Attention. The task is for students whose students id remainder of the division by 7 is 2.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 2/7

9
TaskE37/test.exp Normal file
View File

@ -0,0 +1,9 @@
<NONE>
61
61
61
61
82
<NONE>
<NONE>
<NONE>

9
TaskE37/test.in Normal file
View File

@ -0,0 +1,9 @@
(082) 123-45-67
+61 5-555-553
+61 555-55-55
061 5-555-553
061 555-55-55
082 123-45-67
082 123-45-67x
082 23-45-67
82 123-45-67

40
TaskE38/description.txt Normal file
View File

@ -0,0 +1,40 @@
Numer domu
==========
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć numer domu z adresu. Zakładamy, że adres
składa się ze skrótu "ul.", "os." bądź "al.", z nazwy ulicy, numeru domu i
opcjonalnego numeru mieszkania (oddzielonego od numeru domu ukośnikiem bądź
napisem " m. "). Nazwa ulicy składa się z co najmniej 2 liter (łącznie z
polskimi znakami), zaczyna się wielką literą. Jeśli napis nie spełnia
podanych warunków, należy wypisać "<NONE>".
For each string, you should extract the building number from the address.
We assume, that the address consists of the abbreviation "ul.", "os.' or "al."
street name, building name, and an optional number of apartment number
(separated from building number by a slash or " m. ". The street number
consists of at least 2 letters (including polish letters), starting with
the capital letter.
If the string does not fulfill the condition, you should print "<NONE>".
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 3.
Attention. The task is for students whose students id remainder of the division by 7 is 3.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 3/7

7
TaskE38/test.exp Normal file
View File

@ -0,0 +1,7 @@
11
<NONE>
<NONE>
<NONE>
34
<NONE>
7

7
TaskE38/test.in Normal file
View File

@ -0,0 +1,7 @@
al. Xa 11/34
bla
os. Piastów 034 m. 2
os. Piastów 34 m. 0
os. Piastów 34 m. 2
osa Piastów 34 m. 2
ul. Chochlików 7

36
TaskE39/description.txt Normal file
View File

@ -0,0 +1,36 @@
Kod PIN
=======
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis jest 6-cyfrowym kodem PIN,
przy czym zakładamy, że kod PIN może zawierać co najwyżej jedno zero.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is 6 digit PIN number.
We assume that the PIN number can contain at most one zero.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 4.
Attention. The task is for students whose students id remainder of the division by 7 is 4.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 4/7

12
TaskE39/test.exp Normal file
View File

@ -0,0 +1,12 @@
no
yes
no
yes
yes
yes
no
yes
yes
yes
no
no

12
TaskE39/test.in Normal file
View File

@ -0,0 +1,12 @@
000000
012345
1111
111201
112130
121144
12345
211301
465542
707871
888800
WTF

39
TaskE40/description.txt Normal file
View File

@ -0,0 +1,39 @@
Wiek człowieka
==============
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje wiek człowiek,
tzn. jest postaci typu "45 lat", przy czym dla pierwszych lat wyjątkowo -
"1 roczek", "2 latka", "3 latka", "4 latka". Maksymalny wiek - 110 lat.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is an age of human,
this is the form of "45 lat". For the first years, exceptionally -
"1 roczek", "2 latka", "3 latka", "4 latka". The maximum age is 110 years.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 5.
Attention. The task is for students whose students id remainder of the division by 7 is 5.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 5/7

18
TaskE40/test.exp Normal file
View File

@ -0,0 +1,18 @@
yes
yes
no
yes
yes
yes
no
yes
no
yes
no
yes
yes
no
yes
yes
yes
no

18
TaskE40/test.in Normal file
View File

@ -0,0 +1,18 @@
1 roczek
101 lat
104 lat
104 lata
11 lat
110 lat
111 lat
12 lat
12 lata
2 latka
22 lat
22 lata
3 latka
4 lata
4 latka
44 lata
5 lat
5 latek

36
TaskE41/description.txt Normal file
View File

@ -0,0 +1,36 @@
Wiek człowieka 2
================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis reprezentuje wiek człowiek,
tzn. jest postaci typu "45 lat". Maksymalny wiek — 123 lata.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is an age of human,
this is the form of "45 lat". The maximum age is 123 years.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 6.
Attention. The task is for students whose students id remainder of the division by 7 is 6.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 6/7

19
TaskE41/test.exp Normal file
View File

@ -0,0 +1,19 @@
no
yes
yes
yes
yes
yes
no
yes
no
no
yes
no
yes
yes
yes
yes
yes
yes
no

19
TaskE41/test.in Normal file
View File

@ -0,0 +1,19 @@
1 lata
1 rok
100 lat
11 lat
112 lat
12 lat
12 lata
123 lata
124 lata
130 lat
2 lata
22 lat
22 lata
3 lata
4 lata
44 lata
5 lat
99 lat
x10 lat

39
TaskE42/description.txt Normal file
View File

@ -0,0 +1,39 @@
Big "NO!"
=========
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy zadany napis to "NIE" lub "NO", w
którym odpowiednio "E" bądź "O" występuję co najmniej 6 razy, po czy
występują co najmniej 3 wykrzykniki. Zob.
http://tvtropes.org/pmwiki/pmwiki.php/Main/BigNo
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string check, if the string is "NIE" or "NO",
where "E" or "O" occurs at least 6 times, followed by at least 3
exclamation marks. Check
http://tvtropes.org/pmwiki/pmwiki.php/Main/BigNo
If the string fulfills the condition, you should print 'yes' on the standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 0.
Attention. The task is for students whose students id remainder of the division by 7 is 0.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 0/7

13
TaskE42/run.py Normal file
View File

@ -0,0 +1,13 @@
import re
def sprawdz_napis(napis):
warunek = re.compile(r'^NI+E{6,}!{3,}|^N+O{6,}!{3,}')
if warunek.match(napis):
print('yes')
else:
print('no')
with open('test.in', 'r') as plik:
for linia in plik:
linia = linia.rstrip('\n')
sprawdz_napis(linia)

7
TaskE42/test.exp Normal file
View File

@ -0,0 +1,7 @@
no
yes
no
yes
yes
no
no

7
TaskE42/test.in Normal file
View File

@ -0,0 +1,7 @@
NIE!!!!!!
NIEEEEEE!!!!
NOOOO!!!
NOOOOOO!!!
NOOOOOOOOO!!!!!!!
NOOOOOOOOOOOOOOOO!!
xxxxNIEEEEEEEEEEEEEEEE!!!!!!!!!!!

44
TaskE43/description.txt Normal file
View File

@ -0,0 +1,44 @@
Mem 1
=====
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy zadany napis to ciąg liter
(uwzględnić też polskie znaki) po którym następuje ciąg wykrzykników
zamiast których może wystąpić "1", "one" albo "eleven". W napisie muszą
pojawić się co najmniej 2 wykrzykniki, niekoniecznie obok siebie oraz co
najmniej jedno "1", "one" lub "eleven". Zob.
http://knowyourmeme.com/memes/the-1-phenomenon
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string check, if the string is a sequence
of letters (including polish letters), followed by a sequence
of exclamation marks, instead of which, there may be
"1", "one" or "eleven". In the string, there must be at least
2 exclamation marks, not necessarily next to each other,
at least one "1", "one" or "eleven". Check
http://knowyourmeme.com/memes/the-1-phenomenon
If the string fulfills the condition, you should print 'yes' on the standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 7 z resztą 1.
Attention. The task is for students whose students id remainder of the division by 7 is 1.
POINTS: 1
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 1/7

14
TaskE43/test.exp Normal file
View File

@ -0,0 +1,14 @@
yes
no
yes
yes
yes
yes
no
yes
no
yes
no
no
yes
no

14
TaskE43/test.in Normal file
View File

@ -0,0 +1,14 @@
Foo!!one!!1
Foo!1
Foo!1!
Foo!one!1!eleven
Foo!one!1eleven
X!!1
X!1
Xone!!
Ś!elevenelevenone
Ś!elevenelevenone!
Ś!elevenelevenoneX
Źdź3bło!!!!!1
Źdźbło!!!!!1
Źdźbło!!!!!1?

42
TaskE44/description.txt Normal file
View File

@ -0,0 +1,42 @@
Nazwisko żeńskie
================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć nazwisko kobiety z pary imię-nazwisko.
Zakładamy, że kobietę identyfikujemy po imieniu zakończonym na "a",
wyjąwszy imiona "Kosma" i "Jarema". Imię i nazwisko składa się z liter
(włącznie z polskimi znakami), zaczyna się wielką literą (włącznie z
literami "Ć", "Ł", "Ś", "Ź" i "Ż"). Imię i nazwisko powinno składać się z
przynajmniej 2 liter. Jeśli napis nie spełnia podanych warunków, należy
wypisać "<NONE>". Jeśli napis nie spełnia podanych warunków, należy wypisać
"<NONE>".
For each string, extract the last woman's name from pair first name- last name.
We assume, that woman's first name ends with "a", except first names
"Kosma" and "Jarema". First name and Last name consist of letters
(including polish characters), starts with a capital letter
(including "Ć", "Ł", "Ś", "Ź" i "Ż"). The first name and last name
should consist of at least 2 letters.
If the string doesn't fulfill the condition, you should print "<NONE>".
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 5 z resztą 4.
Attention. The task is for students whose students id remainder of the division by 5 is 4.
POINTS: 2
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 4/5

18
TaskE44/run.py Normal file
View File

@ -0,0 +1,18 @@
import re
def analizuj_wiersze(plik):
with open(plik, 'r', encoding='utf-8') as file:
for line in file:
line = line.rstrip()
regex = r'^([A-ZĆŁÓŚŹŻ][a-ząćęłńóśźż]*a)\s([A-ZĆŁÓŚŹŻ][a-ząćęłńóśźż]{1,})$'
match = re.match(regex, line)
if match:
imie, nazwisko = match.groups()
if not re.match(r'^(Kosma|Jarema)$', imie):
print(nazwisko)
else:
print("<NONE>")
else:
print("<NONE>")
analizuj_wiersze("test.in")

14
TaskE44/test.exp Normal file
View File

@ -0,0 +1,14 @@
<NONE>
Kowalska
Długi
<NONE>
<NONE>
<NONE>
<NONE>
<NONE>
Xa
<NONE>
<NONE>
<NONE>
Żuraś
<NONE>

14
TaskE44/test.in Normal file
View File

@ -0,0 +1,14 @@
A Xa
Anna Kowalska
Hanna Długi
Jan Kowalski
Jarema Kowalski
Joanna Maria Nowak
Kosma Nowak
Ua X
Ua Xa
a Xa
anna Kowalska
Ąnna Kowalska
Żaneta Żuraś
żaneta Żuraś

41
TaskE45/description.txt Normal file
View File

@ -0,0 +1,41 @@
Nazwisko męskie
===============
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć nazwisko mężczyzny z pary imię-nazwisko.
Zakładamy, że meżczyznę identyfikujemy po imieniu zakończonym na literę
inną niż "a" plus imiona "Kosma" i "Jarema". Imię i nazwisko składa się z
liter (włącznie z polskimi znakami), zaczyna się wielką literą (włącznie z
literami "Ć", "Ł", "Ś", "Ź" i "Ż"). Imię i nazwisko powinno składać się z
przynajmniej 2 liter. Jeśli napis nie spełnia podanych warunków, należy
wypisać "<NONE>".
For each string, extract the man's last name from pair first name- last name.
We assume, that man's first name ends with all letters, but "a", except first names
"Kosma" and "Jarema". First name and Last name consist of letters
(including polish characters), starts with a capital letter
(including "Ć", "Ł", "Ś", "Ź" i "Ż"). The first name and last name
should consist of at least 2 letters.
If the string doesn't fulfill the condition, you should print "<NONE>".
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 5 z resztą 0.
Attention. The task is for students whose students id remainder of the division by 5 is 0.
POINTS: 2
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 0/5

14
TaskE45/test.exp Normal file
View File

@ -0,0 +1,14 @@
<NONE>
<NONE>
<NONE>
<NONE>
Nowak
Ścież
Źdźbło
<NONE>
Xa
<NONE>
<NONE>
<NONE>
Żuraś
<NONE>

14
TaskE45/test.in Normal file
View File

@ -0,0 +1,14 @@
Anna Kowalska
E Xa
Hanna Długi
Jan Adam Nowak
Jan Nowak
Jarema Ścież
Kosma Źdźbło
Ue X
Ue Xa
e Xa
jan Nowak
Ądam Kowalski
Łukasz Żuraś
łukasz Żuraś

43
TaskE46/description.txt Normal file
View File

@ -0,0 +1,43 @@
Wydobywanie nazwy pliku
=======================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć nazwę pliku z pełnej ścieżki. Należy
uwzględnić dwie konwencje - (1) linuksową (ścieżka zaczyna się ukośnikiem,
poszczególne jej elementy też oddzielane są ukośnikiem), (2) windowsową
(ścieżka zaczyna się od nazwy dysku - wielka litera i dwukropek, potem
następują katalogi oddzielonę odwróconym ukośnikiem), konwencje nie mogą
się mieszać. Jako nazwa katalogu i pliku może wystąpić dowolny niepusty
ciąg znaków niebędących ukośnikiem ani odwróconym ukośnikiem. Jeśli napis
nie spełnia podanych warunków, należy wypisać "<NONE>".
For each string extract filename from a full path.
You should consider two conventions- (1) Linux (the path starts with
the forward slash, elements are separated by a forward slash), (2)- windows
(the path starts with disk name- capital letter, colon, then
directories separated by a backward slash), conventions can not
mix. The dir name or file name can be any non-empty
sequence of string, which are not forward slash or backward slash.
If the string doesn't fulfill the condition, you should print "<NONE>".
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 5 z resztą 1.
Attention. The task is for students whose students id remainder of the division by 5 is 1.
POINTS: 2
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 1/5

13
TaskE46/test.exp Normal file
View File

@ -0,0 +1,13 @@
w--www
Plik.txt
<NONE>
tuxracer
<NONE>
stronka.html
<NONE>
<NONE>
<NONE>
<NONE>
bla.txt
<NONE>
<NONE>

13
TaskE46/test.in Normal file
View File

@ -0,0 +1,13 @@
/a/x/y/z/q/w--www
/home/megapiranha/tajne/Plik.txt
/usr//bin/tuxracer
/usr/bin/tuxracer
/usr/bin/tuxracer/
C:\Windows\Lamer\stronka.html
C:\Windows\Lamer\stronka.html\
C:\Windows\\Lamer\stronka.html\
C:\foo/bar
Windows\Lamer\stronka.html
X:\bla.txt
\Windows\Lamer\stronka.html
usr/bin/tuxracer

38
TaskE47/description.txt Normal file
View File

@ -0,0 +1,38 @@
Wydobywanie hashtagów
=====================
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy wydobyć wszystkie hashtagi twitterowe z napisu.
Zakładamy, że hashtag to ciąg małych i wielkich liter oraz cyfr
(niezaczynający się cyfrą) i poprzedzony znakiem '#'. Hashtagi należy
wypisać oddzielone średnikami. Jeśli napis nie spełnia podanych warunków,
należy wypisać "<NONE>".
For each string, extract all Twitter hashtags from the string.
We assume, that a hashtag is a sequence of lower case letters,
capital case letters, and digits (can not start with a digit),
starting with the '#' character. You should print hashtags separated by
a comma.
If the string doesn't fulfill the condition, you should print "<NONE>".
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 5 z resztą 2.
Attention. The task is for students whose students id remainder of the division by 5 is 2.
POINTS: 2
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 2/5

5
TaskE47/test.exp Normal file
View File

@ -0,0 +1,5 @@
#UFO
#a;#A;#PoKeMoN0
<NONE>
<NONE>
#Rambo61;#Rocky9

5
TaskE47/test.in Normal file
View File

@ -0,0 +1,5 @@
Dzisiaj widziałem #UFO na niebie.
Dziwne hasztagi: #a, #A, #PoKeMoN0, ale to nie: #0PoKeMoN.
Tu nie ma hasztaga.
Tu też nie ma hasztaga, chociaż jest #.
Zawiodłem się na #Rambo61, chociaż lubiłem #Rocky9.

40
TaskE48/description.txt Normal file
View File

@ -0,0 +1,40 @@
PoKeMoN
=======
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Dla każdego napisu należy sprawdzić, czy napis składa się z naprzemian
występujących małych i wielkich liter. Napis może zaczynać się i kończyć
małą bądź wielką literą. Należy uwzględnić polskie znaki. Napis musi
składać się z przynajmniej 2 znaków.
Jeśli napis spełnia tak określony warunek, należy wypisać na
standardowym wyjściu 'yes', w przeciwnym razie — 'no'.
For each string, check if the string is a sequence of alternately
occurring lower and capital case letters. The string may start and end
with a lower or capital case letter. You should consider the polish characters.
The string should consist of at least two letters.
If the string fulfills the condition, you should print 'yes' on the
standard output and 'no' otherwise.
UWAGA! Zadanie przeznaczone dla studentów, których numer indeksu
dzieli się przez 5 z resztą 3.
Attention. The task is for students whose students id remainder of the division by 5 is 3.
POINTS: 2
DEADLINE: 2021-12-04 23:59:59
REMAINDER: 3/5

12
TaskE48/test.exp Normal file
View File

@ -0,0 +1,12 @@
no
no
yes
yes
yes
yes
no
no
no
yes
yes
yes

12
TaskE48/test.in Normal file
View File

@ -0,0 +1,12 @@
2yĆó
POKEmon
PoKeMoN
RyĆó
oK
pOkEmOn
pokemon
y
Ć
ŹdŹbŁo
ŹlExSiĘ
źDźBłO

19
TaskF00/description.txt Normal file
View File

@ -0,0 +1,19 @@
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
Write a program to substitute all 4-digits string to 4-characters string.
In the substituted string "0" should change to "a", "1" should change to "b", "2" should change to "c", etc.
E.g. "1162" should change to "bbgc".
In this task digit means [0-9] class.

File diff suppressed because one or more lines are too long

View File

3
TaskF00/simple.exp Normal file
View File

@ -0,0 +1,3 @@
dece 34 dfd gfd 5
f33sdfsdbcdedsfsdf
3r

3
TaskF00/simple.in Normal file
View File

@ -0,0 +1,3 @@
3424 34 dfd gfd 5
f33sdfsd1234dsfsdf
3r

22
TaskF01/description.txt Normal file
View File

@ -0,0 +1,22 @@
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
For each word with at least one lower case letter and one capital letter
change every lower case letter to capital case and change every capital case
letter to lower. In this task word means the string of "\w" metacharacters,
lower case letter is [a-ząćęłńóśźż] class,
capital case letter is [A-ZĄĆĘŁŃÓŚŹŻ] class.
POINTS: 2
DEADLINE: 2020-12-18 23:59:59

File diff suppressed because one or more lines are too long

View File

3
TaskF01/simple.exp Normal file
View File

@ -0,0 +1,3 @@
ala mA KOTa
lallaa
żUK

3
TaskF01/simple.in Normal file
View File

@ -0,0 +1,3 @@
ala Ma kotA
lallaa
Żuk

23
TaskF02/description.txt Normal file
View File

@ -0,0 +1,23 @@
Napisać program, który wczytuje kolejne wiersze ze standardowego
wejścia i analizuje każdy wiersz (bez znaku końca wiersza). Należy w
jak największym stopniu wykorzystać wyrażenia regularne (np. nie wolno
użyć negacji jako operacji w danym języku programowania, jeśli da się
to wyrazić w samym wyrażeniu regularnym). Tam, gdzie to możliwe należy
użyć pojedynczego wyrażenia regularnego.
Write a program, which loads consecutive lines from standard input
and analyze every line (with no newline character). You should
use regular expressions to the greatest extent possible (e.g. you
can not use negation in the programming language if it is
possible to express the same in regular expression). Wherever possible,
use one regular expression.
For each line write 4 digits separated by space "A B C D", where
A stands for all lower case letters, B stands for
all capital case letters, C stand for digit,
D stands for all remaining characters excluding newline.
In this task, lower case letter is [a-ząćęłńóśźż] class,
capital case letter is [A-ZĄĆĘŁŃÓŚŹŻ] class.
POINTS: 1
DEADLINE: 2020-12-18 23:59:59

Some files were not shown because too many files have changed in this diff Show More