Advertisement
Guest User

kolos sroda

a guest
Jun 20th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.40 KB | None | 0 0
  1. import pickle
  2.  
  3. class Statek():
  4.  
  5. def __init__(self, dlugosc, ozaglowanie, liczba_miejsc, name):
  6. self.dlugosc = dlugosc
  7. self.ozaglowanie = ozaglowanie
  8. self.liczba_miejsc = liczba_miejsc
  9. self.poczatkowy_kierunek = 0
  10. self.wszystkie_kierunki = []
  11. self.name = name
  12. self.kierunek = 0
  13. self.ster = []
  14.  
  15. def plyniemy(self):
  16.  
  17. odpowiedz = input("Czy chcesz sterowac?")
  18. while odpowiedz in ["tak", "TAK", "t", "Tak", "nie", "NIE", "n", "Nie"]:
  19. if odpowiedz in ["tak", "TAK", "t", "Tak"]:
  20. self.kierunek = int(input("Podaj wychylenie steru"))
  21. if -30 <= self.kierunek <= 30:
  22. if self.poczatkowy_kierunek + self.kierunek < 0:
  23. self.poczatkowy_kierunek = 360 - abs(self.poczatkowy_kierunek + self.kierunek)
  24. self.wszystkie_kierunki.append(self.poczatkowy_kierunek)
  25. self.ster.append(self.kierunek)
  26. print("Twój aktualny kurs: ",self.poczatkowy_kierunek)
  27. odpowiedz = input("Chcesz sprobowac ponownie?")
  28.  
  29. elif self.poczatkowy_kierunek + self.kierunek >360:
  30. self.poczatkowy_kierunek = (self.poczatkowy_kierunek + self.kierunek) - 360
  31. self.wszystkie_kierunki.append(self.poczatkowy_kierunek)
  32. self.ster.append(self.kierunek)
  33. print("Twój aktualny kurs: ",self.poczatkowy_kierunek)
  34. odpowiedz = input("Chcesz sprobowac ponownie?")
  35.  
  36. else:
  37. self.poczatkowy_kierunek = self.poczatkowy_kierunek + self.kierunek
  38. self.wszystkie_kierunki.append(self.poczatkowy_kierunek)
  39. self.ster.append(self.kierunek)
  40. print("Twój aktualny kurs: ",self.poczatkowy_kierunek)
  41. odpowiedz = input("Chcesz sprobowac ponownie?")
  42. else:
  43. print("Wartosc z zlego przedzialu, sprobuj ponownie")
  44. elif odpowiedz in ["NIE","nie","n","Nie"]:
  45. break
  46.  
  47. def dziennik_kapitanski(self):
  48.  
  49. zapis_wszystkie_kierunki = self.wszystkie_kierunki
  50. ster_wartosc = self.ster
  51. f = open("dziennik_kapitanski.dat", "wb")
  52. pickle.dump(zapis_wszystkie_kierunki, f)
  53. pickle.dump(ster_wartosc, f)
  54. f.close()
  55.  
  56. def wyswietl_dane(self):
  57.  
  58. print("Nazwa: ",self.name)
  59. print("Dlugosc: ",self.dlugosc)
  60. print("Ozaglowanie: ",self.ozaglowanie)
  61. print("Liczba miejsc: ",self.liczba_miejsc)
  62.  
  63. def otworz_dziennik_kapitanski(self):
  64. f = open("dziennik_kapitanski.dat", "rb")
  65. zapis_wszystkie_kierunki = pickle.load(f)
  66. ster_wartosc = pickle.load(f)
  67. print("Nazwa statku: ",self.name)
  68. for i in range(len(zapis_wszystkie_kierunki)):
  69. print("Ster",ster_wartosc[i], "stopni")
  70. print("Aktualny kurs: ",zapis_wszystkie_kierunki[i])
  71. f.close()
  72.  
  73. statek1 = Statek(name="TAK",dlugosc=15,ozaglowanie=True,liczba_miejsc=50)
  74. statek2 = Statek(name="NIE",dlugosc=10,ozaglowanie=False,liczba_miejsc=30)
  75. statek1.wyswietl_dane()
  76. print("\n")
  77. statek2.wyswietl_dane()
  78. print("\n")
  79. statek1.plyniemy()
  80. statek1.dziennik_kapitanski()
  81. statek1.otworz_dziennik_kapitanski()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement