Instrukcja Plik

Transkrypt

Instrukcja Plik
Ćwiczenie 4: Złożone struktury danych cz. 2.
Zagadnienia:
o Listy wielowymiarowe
o Operacje na łańcuchach
o Krotki, słowniki
Uwagi do zadań:
 Koniecznie dodawać inne komentarze w kodzie źródłowym
Zadanie 1. Napisać program, które dla zadanych wartości zakresu zmiennej x (Xpoczatkowe,
Xkoncowe, dX) obliczy przebieg wartości następujących funkcji:
a) y1 = sin(x)
b) y2 = sin(x)e-nx (parametr n podawany z klawiatury)
Wartości wyników prezentować na ekranie w postacie tabelki wyglądającej następująco:
| x
| y1
| y2
|
------------------------------------------| 0
| 11
| 22
|
| 0.1
| 11
| 22
|
| 0.2
| 11
| 22
|
| 0.3
| 11
| 22
|
Szerokość kolumn i szerokość wypisywanych liczb dobrać odpowiednio.
Zadanie 2. Napisać prostą grę w statki, w której gracz podaje koordynaty strzału a komputer
wyświetla uaktualnioną planszę gry gracza z zaznaczonym symbolem „pudło” jaki kropką, oraz
trafienia w statek np. „s”. Komputer generuje planszę ze statkami w sposób pokazany poniżej.
Gracz nie posiada swojej planszy ze statkami a jedynie strzela do komputera.
Program zrealizować w następujący sposób:
1) Stworzyć zmienną tekstową wielowierszową, np.:
s="""
..........
..sssss...
..........
.s........
.s..s..s..
....s..s..
....s..s..
..s.......
......s...
.........."""
# konwersja do listy list
s=s.splitlines()
s=s[1:] # pominięcie pierwszego pustego wiersza
Po wykonaniu tych instrukcji, zmienna s będzie listą zawierającą kolejne wiersze tekstu.
2) Zmienną s przerobić na tablicę dwuwymiarową czyli listę list (o nazwie p), tzn. każdy
element listy jest listą symboli opisujących elementy danego wiersza. Ta lista list będzie planszą
komputera zawierającą jego statki.
3) Stworzyć planszę gracza (lista list o nazwie pg) o rozmiarach takich jak plansza komputera ale
pustą.
4) Napisać główną pętlę gry, w której:
- pobierane będą od użytkownika koordynaty strzału (indeksy)
- wartość dla podanych koordynat z planszy komputera będzie przepisywana do planszy
gracza
- plansza gracza będzie wyświetlana po dokonanym strzale.
Przykład:
>>>
Podaj x = 2
Podaj y = 2
0 1 2 3 4 5 6 7 8 9
-------------------0 |
|
1 |
2 |
|
.
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
--------------------
5) Jeżeli użytkownik jako wartość koordynaty poda pusty tekst (od razu naciśnie Enter) grę
należy przerwać i wyświetlić planszę komputera.
6) Dowolnie rozszerzyć funkcjonalność gry według uznania i własnej pomysłowości. Programy
można wysyłać na adres wykładowcy drogą elektroniczną. Za przesłany program z
rozszerzeniem gry będę przyznawane dodatkowe punkty z laboratorium wg. uznania
wykładowcy (ilość punktów uzależniona będzie od inwencji studenta, jakości wykonania
programu oraz czasu przesłania)