Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pickle
- class Statek():
- def __init__(self, dlugosc, ozaglowanie, liczba_miejsc, name):
- self.dlugosc = dlugosc
- self.ozaglowanie = ozaglowanie
- self.liczba_miejsc = liczba_miejsc
- self.poczatkowy_kierunek = 0
- self.wszystkie_kierunki = []
- self.name = name
- self.kierunek = 0
- self.ster = []
- def plyniemy(self):
- odpowiedz = input("Czy chcesz sterowac?")
- while odpowiedz in ["tak", "TAK", "t", "Tak", "nie", "NIE", "n", "Nie"]:
- if odpowiedz in ["tak", "TAK", "t", "Tak"]:
- self.kierunek = int(input("Podaj wychylenie steru"))
- if -30 <= self.kierunek <= 30:
- if self.poczatkowy_kierunek + self.kierunek < 0:
- self.poczatkowy_kierunek = 360 - abs(self.poczatkowy_kierunek + self.kierunek)
- self.wszystkie_kierunki.append(self.poczatkowy_kierunek)
- self.ster.append(self.kierunek)
- print("Twój aktualny kurs: ",self.poczatkowy_kierunek)
- odpowiedz = input("Chcesz sprobowac ponownie?")
- elif self.poczatkowy_kierunek + self.kierunek >360:
- self.poczatkowy_kierunek = (self.poczatkowy_kierunek + self.kierunek) - 360
- self.wszystkie_kierunki.append(self.poczatkowy_kierunek)
- self.ster.append(self.kierunek)
- print("Twój aktualny kurs: ",self.poczatkowy_kierunek)
- odpowiedz = input("Chcesz sprobowac ponownie?")
- else:
- self.poczatkowy_kierunek = self.poczatkowy_kierunek + self.kierunek
- self.wszystkie_kierunki.append(self.poczatkowy_kierunek)
- self.ster.append(self.kierunek)
- print("Twój aktualny kurs: ",self.poczatkowy_kierunek)
- odpowiedz = input("Chcesz sprobowac ponownie?")
- else:
- print("Wartosc z zlego przedzialu, sprobuj ponownie")
- elif odpowiedz in ["NIE","nie","n","Nie"]:
- break
- def dziennik_kapitanski(self):
- zapis_wszystkie_kierunki = self.wszystkie_kierunki
- ster_wartosc = self.ster
- f = open("dziennik_kapitanski.dat", "wb")
- pickle.dump(zapis_wszystkie_kierunki, f)
- pickle.dump(ster_wartosc, f)
- f.close()
- def wyswietl_dane(self):
- print("Nazwa: ",self.name)
- print("Dlugosc: ",self.dlugosc)
- print("Ozaglowanie: ",self.ozaglowanie)
- print("Liczba miejsc: ",self.liczba_miejsc)
- def otworz_dziennik_kapitanski(self):
- f = open("dziennik_kapitanski.dat", "rb")
- zapis_wszystkie_kierunki = pickle.load(f)
- ster_wartosc = pickle.load(f)
- print("Nazwa statku: ",self.name)
- for i in range(len(zapis_wszystkie_kierunki)):
- print("Ster",ster_wartosc[i], "stopni")
- print("Aktualny kurs: ",zapis_wszystkie_kierunki[i])
- f.close()
- statek1 = Statek(name="TAK",dlugosc=15,ozaglowanie=True,liczba_miejsc=50)
- statek2 = Statek(name="NIE",dlugosc=10,ozaglowanie=False,liczba_miejsc=30)
- statek1.wyswietl_dane()
- print("\n")
- statek2.wyswietl_dane()
- print("\n")
- statek1.plyniemy()
- statek1.dziennik_kapitanski()
- statek1.otworz_dziennik_kapitanski()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement