This commit is contained in:
2025-12-17 16:03:42 +01:00
parent 58c5e8a42a
commit 168c5d1c32
4 changed files with 101 additions and 4 deletions

View File

@@ -0,0 +1,34 @@
def oblicz_vat_brutto(netto, stawka_vat=5):
# if type(netto) is not int or type(netto) is not float:
if not isinstance(netto, (int, float)):
print(f"Wprowadziłeś błędnie {netto} - oczekiwano liczby")
return None
if netto <= 0:
print(f"Uwaga netto={netto} <= 0 - zwracam (False, False)")
return (False, False)
dozwolone = {0, 5, 8, 23}
if stawka_vat not in dozwolone:
print(f"Stawka {stawka_vat}% nie jest dozwolona - ustawiono 23%")
stawka_vat = 23
else:
print("Stawka VAT poprawna")
vat = netto * (stawka_vat / 100.00)
brutto = netto + vat
vat = round(vat, 2)
brutto = round(brutto, 2)
print(f"Wynik: VAT ({stawka_vat}%): {vat:.2f} | BRUTTO: {brutto:.2f}")
return (vat, brutto)
# TESTY
print("Testy funkcji")
print(oblicz_vat_brutto(100, 5))
print(oblicz_vat_brutto(133, 8))
print(oblicz_vat_brutto(66, 12))
print(oblicz_vat_brutto("kot", 5))
print(oblicz_vat_brutto(0, 5))

25
dzien_03/przyklady/jk.py Normal file
View File

@@ -0,0 +1,25 @@
def oblicz_brutto():
vaty = [0, 5, 8, 12, 23]
vat23 = vaty[-1] # ostatni
netto = float(input("Podaj wartość produktu: "))
vat_input = float(input("Podaj stawkę vat (ENTER = default 5%):") or 5)
if netto <= 0:
print("Niestety, wartość netto jest zbyt niska (min. 1zł)!")
return None
if vat_input in vaty:
brutto = netto * (1 + vat_input / 100)
# 5.6665434534
print(f"Wartość vat jest poprawna. Kwota brutto: {brutto:.2f}")
else:
print(f"Błąd: Stawka vat {vat_input}% nie jest obsługiwana. Zastosowano 23% vat.")
brutto = netto * (1 + vat23 / 100)
print(f"Kwota brutto: {brutto:.2f}")
return (netto, vat_input)
oblicz_brutto()

38
dzien_03/przyklady/k1.py Normal file
View File

@@ -0,0 +1,38 @@
def czytaj_netto(
wartosc: str,
):
tmp_value = None
ret_value = None
value_ok = False
while not value_ok:
tmp_value = input(f"{wartosc} - pamiętaj o wartości podatku: ")
try:
ret_value = float(tmp_value)
if ret_value <= 0:
print(
f"Wartość {ret_value} jest nieprawidłowa (musi być większa od 0). Spróbuj ponownie "
)
else:
value_ok = True
print("Poprawna kwota netto")
except:
print(f"Błąd {tmp_value} to nie jest liczba. Spróbuj ponownie...")
return ret_value
def czytaj_vat(wartosc: str):
progi = (0, 5, 8, 23)
tmp_value = input(f"{wartosc} {progi}")
try:
ret_value = int(float(tmp_value))
if ret_value not in progi:
progi(f"Stawka {ret_value}% jest nieprawidłowa. Ustawiam 23%.")
ret_value = 23
else:
print(f"Stawka {ret_value} przyjęta")
except:
print(f"Błędne dane: {tmp_value}. Ustawiam 23%")
ret_value = 23
return ret_value

View File

@@ -39,13 +39,13 @@ pre_p = czytaj_dana_float()
print(f"{wys_p=} {pre_p=}") fgsdfgsdfgsdfgsdfgdsfgfd print(f"{wys_p=} {pre_p=}") fgsdfgsdfgsdfgsdfgdsfgfd
# zadanie: # zadanie:
zdefiniuj funkcję, która pobiera wartość netto, stawkę vat (domyślnie 5), zdefiniuj funkcję, która pobiera wartość netto, stawkę vat (domyślnie 5), +
jeśli netto to nie float lub int, zwróć None jeśli netto to nie float lub int, zwróć None +
sprawdza, czy podana stawka mieści się w (0,5,8,23), jeśli nie, to 23 ma być sprawdza, czy podana stawka mieści się w (0,5,8,23), jeśli nie, to 23 ma być +
jeśli netto <=0, to zwróć False, False jeśli netto <=0, to zwróć False, False +