Commit 46edaa06 by Patryk Czarnik

policz_znaki - v3 - inne znaki

parent 526d6ae0
def policz_znaki(napis): def policz_znaki(napis, lewy='<', prawy='>'):
wynik = 0 wynik = 0
poziom = 0 poziom = 0
for znak in napis: for znak in napis:
if znak == '<': if znak == lewy:
poziom += 1 poziom += 1
elif znak == '>': elif znak == prawy:
poziom -= 1 poziom -= 1
else: else:
wynik += poziom wynik += poziom
......
...@@ -3,3 +3,4 @@ from policz_znaki import * ...@@ -3,3 +3,4 @@ from policz_znaki import *
print(policz_znaki('ala ma <kota> a kot ma ale')) print(policz_znaki('ala ma <kota> a kot ma ale'))
print(policz_znaki('a <a<a<a>>>')) print(policz_znaki('a <a<a<a>>>'))
print(policz_znaki('a <a<a<aaa>a>>')) print(policz_znaki('a <a<a<aaa>a>>'))
print(policz_znaki('ala [kota [a kot]] ma [ale]', '[', ']'))
\ No newline at end of file
...@@ -9,3 +9,6 @@ def test_policz_znaki_dwa_teksty(): ...@@ -9,3 +9,6 @@ def test_policz_znaki_dwa_teksty():
def test_policz_znaki_zagniezdzenie(): def test_policz_znaki_zagniezdzenie():
assert policz_znaki('a <a<a<aaa>a>>') == 14 assert policz_znaki('a <a<a<aaa>a>>') == 14
def test_policz_znaki_inne():
assert policz_znaki('ala [kota [a kot]] ma [ale]', '[', ']') == 18
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment