Uczę się Python !!! Jestem zielony:) mam pytanie co do programu

0

Witajcie
Uczę się Pythona z podręcznika "Python dla zupełnie zielony - owoce programowania"
Jestem na końcu rozdziału 2 i mam następujące zadanie programistyczne
Oto treść zadania : "Utwórz program, który poprosi użytkownika o podanie ceny netto każdego artykułu, a następnie wyświetli wartość netto, wartość podatku i wartość brutto zakupów. Załóżmy, że podatek
wynosi 7%"

mój kod rozwiązania zadania:

netto1 = float(input("Wprowadz cene artykółu 1"))
PODATEK = 0.07
NETTO = netto1 - PODATEK
BRUTTO = netto1 + PODATEK
print(netto1*PODATEK, "Wartosc podatku")
print(netto1)
print(NETTO)
print(BRUTTO)

netto2 = float(input("Wprowadz cene artykółu 2"))
print(netto2*PODATEK, "Wartosc podatku")
print(netto2)
print(NETTO)
print(BRUTTO)

netto3 = float(input("Wprowadz cene artykółu 3"))
print(netto3*PODATEK, "Wartosc podatku")
print(netto3)
print(NETTO)
print(BRUTTO)

netto4 = float(input("Wprowadz cene artykółu 4"))
print(netto4*PODATEK, "Wartosc podatku")
print(netto4)
print(NETTO)
print(BRUTTO)

netto5 = float(input("Wprowadz cene artykółu 3"))
print(netto5*PODATEK, "Wartosc podatku")
print(netto5)
print(NETTO)
print(BRUTTO)

Program działa ! Jednak wydaje mi się ,że nie oblicz on poprawnie ?
Proszę o ewentualną pomoc i porady :) i zaznaczam z góry ,że konstrukcja kodu jest "niemrawa "
ale jestem totalnym nowicjuszem . Proszę o wszelką pomoc i porady

2

NETTO = netto1 - PODATEK
BRUTTO = netto1 + PODATEK

zacznijmy może od tego, że w powyższym kodzie odejmujsze/dodajesz procenty od ceny

1
netto_1 = float(input("Wprowadz cene artykułu nr 1:"))
podatek_procent = 0.07
podatek = netto_1 * podatek_procent
brutto = netto_1  + podatek
print(netto_1)
print(podatek)
print(brutto)
0

Dziękuję serdecznie śmiga wszystko ok :), a mam jeszcze pytanko czy nie jest złą praktyką mieszanie ze sobą w jednym kodzie zmienny oraz stałych?

7

czy nie jest złą praktyką mieszanie ze sobą w jednym kodzie zmienny oraz stałych

Nie.

Stałe się wprowadza po to, żeby:

  • kod był bardziej czytelny. Jak widzisz kwota * podatek to od razu wiesz, o co chodzi (w odróżnieniu od kwota * 1.07)
  • w razie potrzeby zmiany wysokości podatku nie trzeba było szukać wszystkich wystąpień wartości 1,07. Zamiast tego poprawiasz w jednym miejscu deklarację stałej i masz temat z głowy
  • rozszerzając poprzedni myślnik: bez wprowadzenia stałych, jak pojawi się konieczność zmiany wysokości podatku, to widząc taki wpis: wartoscZamowienia = kwota * 1,07 to czy tutaj poprawiasz? Bo czy to 1,07 jest wartością podatku? A może obliczasz wartość zamówienia, a ten fragment oznacza, że ktoś kupił 1,07 tony węgla?
  • stałe mogą być używane w różnych miejscach/modułach. Np. math.pi trzyma wartość Pi. Została ona gdzieś określona i teraz możesz z niej korzystać w dowolnym miejscu, w dowolnej aplikacji.

Jeszcze w temacie dobrych praktyk: staraj się stosować angielskie nazwy. Dotyczy to zarówno zmiennych, stałych, ale i funkcji. Poza tym (niezależnie od użytego języka) to dawaj nazwy bardziej opisowe. Bo nazwa brutto za wiele nam nie mówi (oprócz tego, że to jest coś w cenie brutto). O wiele lepsza by była wartoscZamowieniaBrutto, cenaJednostkowaBrutto albo coś, co od razu nam powie, jaka konkretnie wartość jest tam trzymana.

1 użytkowników online, w tym zalogowanych: 0, gości: 1