Algorytm w Pythonie, który pomoże w wyborze wina na podstawie preferencji użytkownika.
Program poprosi użytkownika o odpowiedzi na kilka pytań dotyczących preferencji dotyczących smaku, rodzaju wina, okazji itp., a następnie zasugeruje odpowiednie wino.
# Klasyfikacja win
wina = [
{„name”: „Cabernet Sauvignon”, „type”: „red”, „occasion”: „dinner”, „taste”: „bold”, „region”: „Bordeaux”},
{„name”: „Pinot Noir”, „type”: „red”, „occasion”: „dinner”, „taste”: „light”, „region”: „Burgundy”},
{„name”: „Merlot”, „type”: „red”, „occasion”: „casual”, „taste”: „smooth”, „region”: „California”},
{„name”: „Chardonnay”, „type”: „white”, „occasion”: „dinner”, „taste”: „rich”, „region”: „Burgundy”},
{„name”: „Sauvignon Blanc”, „type”: „white”, „occasion”: „casual”, „taste”: „crisp”, „region”: „New Zealand”},
{„name”: „Riesling”, „type”: „white”, „occasion”: „dessert”, „taste”: „sweet”, „region”: „Germany”},
{„name”: „Prosecco”, „type”: „sparkling”, „occasion”: „celebration”, „taste”: „light”, „region”: „Italy”},
{„name”: „Champagne”, „type”: „sparkling”, „occasion”: „celebration”, „taste”: „rich”, „region”: „France”},
]
def wybierz_wino(typ, okazja, smak, region):
rekomendacje = [wino for wino in wina if wino[„type”] == typ and wino[„occasion”] == okazja and wino[„taste”] == smak and wino[„region”] == region]
if rekomendacje:
return rekomendacje
else:
return [wino for wino in wina if wino[„type”] == typ and wino[„occasion”] == okazja and wino[„taste”] == smak]
def zapytaj_uzytkownika():
typ = input(„Jakie wino preferujesz? (red/white/sparkling): „).strip().lower()
okazja = input(„Na jaką okazję potrzebujesz wino? (dinner/casual/dessert/celebration): „).strip().lower()
smak = input(„Jaki smak preferujesz? (bold/light/smooth/rich/crisp/sweet): „).strip().lower()
region = input(„Czy preferujesz wino z konkretnego regionu? (Bordeaux/Burgundy/California/New Zealand/Germany/Italy/France/any): „).strip().capitalize()
if region == „Any”:
region = None
rekomendacje = wybierz_wino(typ, okazja, smak, region)
if rekomendacje:
print(„\nOto nasze rekomendacje dla Ciebie:”)
for wino in rekomendacje:
print(f”- {wino[’name’]} ({wino[’region’]})”)
else:
print(„Niestety, nie znaleźliśmy wina spełniającego wszystkie Twoje kryteria.”)
if __name__ == „__main__”:
zapytaj_uzytkownika()
Jak działa program:
- Baza danych win: Lista
wina
zawiera słownik z informacjami o różnych winach. - Funkcja
wybierz_wino
: Funkcja przyjmuje preferencje użytkownika (typ, okazja, smak, region) i zwraca listę win spełniających te kryteria. - Funkcja
zapytaj_uzytkownika
: Funkcja zadaje pytania użytkownikowi, zbiera odpowiedzi i wywołuje funkcjęwybierz_wino
z odpowiednimi parametrami. - Wynik: Program drukuje listę rekomendowanych win na podstawie podanych przez użytkownika preferencji.
Możesz dostosować ten program, dodając więcej win do listy, uwzględniając inne kryteria wyboru lub poprawiając logikę rekomendacji.
Aby uruchomić powyższy kod w Pythonie, wykonaj następujące kroki:
- Zainstaluj Pythona: Upewnij się, że masz zainstalowanego Pythona na swoim komputerze. Możesz pobrać najnowszą wersję Pythona ze strony https://www.python.org/downloads/.
- Otwórz środowisko programistyczne (IDE): Możesz użyć dowolnego środowiska programistycznego, takiego jak PyCharm, Visual Studio Code, IDLE, czy nawet prostego edytora tekstu jak Notepad++.
- Skopiuj kod: Skopiuj cały kod podany wcześniej
- Uruchom interpreter Pythona: Uruchom środowisko programistyczne (IDE) i otwórz nowy plik. Wklej powyższy kod do nowego pliku.
- Uruchom program: Uruchom program, klikając przycisk lub używając opcji „Run” w swoim środowisku programistycznym. Program zapyta Cię o preferencje dotyczące wina i poda rekomendacje na podstawie podanych kryteriów.
To wszystko! Powyższy kod działa w trybie konsolowym, więc będzie działać w większości środowisk programistycznych obsługujących Pythona.