Skip to content

Commit c19beac

Browse files
author
Karol Szuster
committed
Tutorial 4 is now using kulka library
1 parent 91ad354 commit c19beac

12 files changed

Lines changed: 249 additions & 176 deletions
Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
35
"""
4-
Ten rozdział rozpocznie serię minitasków celem zaprogramowania gry w zgadywanie.
6+
Ten rozdział rozpocznie serię minitasków celem zaprogramowania gry
7+
w zgadywanie.
58
6-
1. Zacznij od napisania programu, który wylosuje liczbę od 1 do 100 i ją wydrukuje.
7-
Możesz użyć funkcji randint(start,end), która losuje liczbę od 1 do 100.
9+
1. Zacznij od napisania programu, który wylosuje liczbę od 1 do 100 i
10+
ją wydrukuje. Możesz użyć funkcji randint(start,end), która losuje
11+
liczbę od 1 do 100.
812
"""
913
# tutaj zapisz wylosowaną liczbę i ją wydrukuj
1014
tajemnicza_liczba = ___
1115

12-
# nie zapomnij jej wydrukować!
16+
# nie zapomnij jej wydrukować!
Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,18 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
5+
try:
6+
input = raw_input
7+
except NameError:
8+
pass
9+
310
"""
4-
Uruchom ten program i sprawdź co się stanie, gdy wpiszesz dowolną liczbę.
11+
Uruchom ten program i sprawdź co się stanie, gdy wpiszesz dowolną liczbę.
512
"""
613
# liczba, którą zna komputer
7-
tajemnicza_liczba = randint(1,100)
14+
tajemnicza_liczba = randint(1, 100)
815

9-
proba = raw_input("Zgadnij liczbę (pierwsza próba): ")
10-
print "Twój strzał to " + proba
11-
print "Tajemnicza liczba, którą wylosował komputer to" + str(tajemnicza_liczba)
16+
proba = input("Zgadnij liczbę (pierwsza próba): ")
17+
print("Twój strzał to " + proba)
18+
print("Tajemnicza liczba, którą wylosował komputer to" + str(tajemnicza_liczba))
Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
# -*- coding: utf-8 -*-
22
from random import randint
3+
try:
4+
input = raw_input
5+
except NameError:
6+
pass
7+
38
"""
4-
Sprawdź, czy liczba, którą podał człowiek (zmienna proba)
5-
jest rowna tajemniczej liczbie, którą wylosował komputer
6-
Jeżeli tak, wypisz "Zwycięstwo!"
9+
Sprawdź, czy liczba, którą podał człowiek (zmienna proba) jest
10+
rowna tajemniczej liczbie, którą wylosował komputer Jeżeli tak,
11+
wypisz "Zwycięstwo!"
712
"""
813
# liczba, którą zna komputer
9-
tajemnicza_liczba = randint(1,100)
14+
tajemnicza_liczba = randint(1, 100)
1015

11-
proba = int(raw_input("Zgadnij liczbę (pierwsza próba): "))
16+
proba = int(input("Zgadnij liczbę (pierwsza próba): "))
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
try:
5+
input = raw_input
6+
except NameError:
7+
pass
8+
39
"""
410
Kod, który pyta gracza o liczbę, przenieś do funkcji "zgadnij"
511
"""
612
# liczba, którą zna komputer
7-
tajemnicza_liczba = randint(1,100)
13+
tajemnicza_liczba = randint(1, 100)
814

9-
proba = int(raw_input("Zgadnij liczbę (pierwsza próba): "))
10-
if proba is tajemnicza_liczba:
11-
print "Zwycięstwo!"
15+
proba = int(input("Zgadnij liczbę (pierwsza próba): "))
16+
if proba == tajemnicza_liczba:
17+
print("Zwycięstwo!")
1218

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,20 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
try:
5+
input = raw_input
6+
except NameError:
7+
pass
38
"""
49
Pozwól graczowi zgadywać 10 razy. Umieść kod zgadywania w pętli,
510
która wykona się 10 razy
611
"""
712
# liczba, którą zna komputer
8-
tajemnicza_liczba = randint(1,100)
13+
tajemnicza_liczba = randint(1, 100)
914

1015
def zgadnij():
11-
proba = int(raw_input("Zgadnij liczbę (pierwsza próba): "))
12-
if proba is tajemnicza_liczba:
13-
print "Zwycięstwo!"
16+
proba = int(input("Zgadnij liczbę (pierwsza próba): "))
17+
if proba == tajemnicza_liczba:
18+
print("Zwycięstwo!")
1419

15-
zgadnij()
20+
zgadnij()
Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,22 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
try:
5+
input = raw_input
6+
except NameError:
7+
pass
38
"""
4-
Coś tu nie gra! Gracz zgaduje kilka razy, ale widzi zawsze komunikat "pierwsza próba"...
5-
Dodaj do funkcji <<zgadnij>> argument "proba" i wypisuj poprawny komunikat z numerem próby
6-
zamiast "pierwsza próba".
9+
Coś tu nie gra! Gracz zgaduje kilka razy, ale widzi zawsze komunikat
10+
"pierwsza próba"... Dodaj do funkcji <<zgadnij>> argument "proba"
11+
i wypisuj poprawny komunikat z numerem próby zamiast "pierwsza próba".
712
"""
813
# liczba, którą zna komputer
9-
tajemnicza_liczba = randint(1,100)
14+
tajemnicza_liczba = randint(1, 100)
1015

1116
def zgadnij():
12-
proba = int(raw_input("Zgadnij liczbę (pierwsza próba): "))
13-
if proba is tajemnicza_liczba:
14-
print "Zwycięstwo!"
17+
proba = int(input("Zgadnij liczbę (pierwsza próba): "))
18+
if proba == tajemnicza_liczba:
19+
print("Zwycięstwo!")
1520

1621
for proba in range(10):
17-
zgadnij()
22+
zgadnij()
Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,24 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
5+
try:
6+
input_ = raw_input
7+
except NameError:
8+
intput_ = input
9+
310
"""
411
Zmodyfikuj funkcję zgadnij(), aby zwracała True jeżeli użytkownik zgadł,
512
lub False jeżeli tajemnicza liczba nie została trafiona.
613
"""
714
# liczba, którą zna komputer
8-
tajemnicza_liczba = randint(1,100)
15+
tajemnicza_liczba = randint(1, 100)
916

1017
def zgadnij(numer_proby):
11-
proba = int(raw_input("Zgadnij liczbę (próba #%s)" % (numer_proby+1))) # concat
12-
if proba is tajemnicza_liczba:
13-
print "Zwycięstwo!"
14-
18+
proba = int(input_("Zgadnij liczbę (próba #%s)" % (numer_proby + 1)))
19+
20+
if proba == tajemnicza_liczba:
21+
print("Zwycięstwo!")
22+
1523
for proba in range(10):
16-
zgadnij(proba)
24+
zgadnij(proba)
Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,25 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
try:
5+
input = raw_input
6+
except NameError:
7+
pass
38
"""
49
Dodaj wewnątrz pętli for warunek sprawdzający, czy użytkownik zgadł.
510
Jeżeli tak, zakończ pętlę poleceniem "break". Jeżeli jednak gracz nie zgadł za 10 razem,
611
wypisz "Porażka!"
712
"""
813
# liczba, którą zna komputer
9-
tajemnicza_liczba = randint(1,100)
14+
tajemnicza_liczba = randint(1, 100)
1015

1116
def zgadnij(numer_proby):
12-
proba = int(raw_input("Zgadnij liczbę (próba #%s): " % (numer_proby+1)))
13-
if proba is tajemnicza_liczba:
14-
print "Zwycięstwo!"
15-
return True
16-
else:
17-
return False
18-
17+
proba = int(input("Zgadnij liczbę (próba #%s): " % (numer_proby + 1)))
18+
if proba == tajemnicza_liczba:
19+
print("Zwycięstwo!")
20+
return True
21+
else:
22+
return False
23+
1924
for proba in range(10):
20-
zgadnij(proba)
25+
zgadnij(proba)
Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,34 @@
11
# -*- coding: utf-8 -*-
2+
from __future__ import print_function
23
from random import randint
4+
try:
5+
input = raw_input
6+
except NameError:
7+
pass
38
"""
4-
Czas na podpowiedzi :) Rozszerz funkcję podpowiedz(tajemnicza_liczba, proba),
5-
która będzie podpowiadać graczowi. Jeżeli tajemnicza liczba jest większa od tej,
6-
którą podał gracz, wypisz "większa". Jeżeli mniejsza, wypisz "mniejsza"
9+
Czas na podpowiedzi :) Rozszerz funkcję podpowiedz(tajemnicza_liczba,
10+
proba), która będzie podpowiadać graczowi. Jeżeli tajemnicza liczba
11+
jest większa od tej, którą podał gracz, wypisz "większa". Jeżeli
12+
mniejsza, wypisz "mniejsza"
713
"""
814
# liczba, którą zna komputer
9-
tajemnicza_liczba = randint(1,100)
15+
tajemnicza_liczba = randint(1, 100)
1016

1117
def podpowiedz(tajemnicza_liczba, proba):
12-
# Tutaj Twoja podpowiedź!
18+
# Tutaj Twoja podpowiedź!
19+
pass
1320

1421
def zgadnij(numer_proby):
15-
proba = int(raw_input("Zgadnij liczbę (próba #%s): " % (numer_proby+1)))
16-
if proba is tajemnicza_liczba:
17-
print "Zwycięstwo!"
18-
return True
19-
else:
20-
# nie zapomnij wywołać funkcji podpowiedź() z właściwymi argumentami!
21-
return False
22-
22+
proba = int(input("Zgadnij liczbę (próba #%s): " % (numer_proby + 1)))
23+
if proba == tajemnicza_liczba:
24+
print("Zwycięstwo!")
25+
return True
26+
else:
27+
# nie zapomnij wywołać funkcji podpowiedź() z właściwymi argumentami!
28+
return False
29+
2330
for proba in range(10):
24-
wynik = zgadnij(proba)
25-
if wynik is True:
26-
break
27-
elif proba is 9 and wynik is False:
28-
print "Porażka!"
31+
if zgadnij(proba):
32+
break
33+
else:
34+
print("Porażka!")
Lines changed: 41 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,20 @@
11
# -*- coding: utf-8 -*-
2-
import sys
3-
sys.path.append("..")
4-
from sphero_config import sphero
2+
from __future__ import print_function
53
from random import randint
4+
from kulka import Kulka
5+
import time
6+
7+
try:
8+
input = raw_input
9+
except NameError:
10+
pass
11+
612
"""
7-
Świetnie! Pamiętacie jeszcze o Sphero?
13+
Świetnie! Pamiętacie jeszcze o Sphero?
814
915
Dodaj teraz kod, który zaświeci Sphero na zielono i zrobi obrót,
10-
jeżeli gracz zgadnie liczbę, za każdą zaś błędną odpowiedź, Sphero
11-
zamiga 3 razy na pomarańczowo!
16+
jeżeli gracz zgadnie liczbę, za każdą zaś błędną odpowiedź,
17+
Sphero zamiga 3 razy na pomarańczowo!
1218
Extra task: im strzał jest bliżej wyniku, niech Sphero świeci się jaśniej!
1319
1420
Podpowiedzi:
@@ -17,34 +23,36 @@
1723
Możesz użyć funkcji zrob_kolko(), która wykonuje obrót!
1824
"""
1925

26+
ADDR = 'XX:XX:XX:XX:XX:XX'
27+
2028
# liczba, którą zna komputer
21-
tajemnicza_liczba = randint(1,100)
29+
tajemnicza_liczba = randint(1, 100)
2230

23-
def zrob_kolko():
24-
for obrot in [1,120,240,359,1]:
25-
sphero.roll(0, obrot)
26-
sphero.czekaj(0.0001)
31+
def zrob_kolko(kulka):
32+
for obrot in [1, 120, 240, 359, 1]:
33+
kulka.roll(0, obrot)
34+
time.sleep(0.01)
2735

2836
def podpowiedz(tajemnicza_liczba, proba):
29-
if tajemnicza_liczba > proba:
30-
print " -> Większa."
31-
else:
32-
print " -> Mniejsza."
33-
34-
def zgadnij(numer_proby):
35-
proba = int(raw_input("Zgadnij liczbę (próba #%s): " % (numer_proby+1)))
36-
if proba is tajemnicza_liczba:
37-
print "Zwycięstwo!"
38-
# tutaj ustaw kolor zwycięstwa!
39-
return True
40-
else:
41-
podpowiedz(tajemnicza_liczba, proba)
42-
# tutaj zamigaj trzy razy!
43-
return False
44-
45-
for proba in range(10):
46-
wynik = zgadnij(proba)
47-
if wynik is True:
48-
break
49-
elif proba is 9 and wynik is False:
50-
print "Porażka!"
37+
if tajemnicza_liczba > proba:
38+
print(" -> Większa.")
39+
else:
40+
print(" -> Mniejsza.")
41+
42+
def zgadnij(kulka, numer_proby):
43+
proba = int(input("Zgadnij liczbę (próba #%s): " % (numer_proby + 1)))
44+
if proba == tajemnicza_liczba:
45+
print("Zwycięstwo!")
46+
# tutaj ustaw kolor zwycięstwa!
47+
return True
48+
else:
49+
podpowiedz(tajemnicza_liczba, proba)
50+
# tutaj zamigaj trzy razy!
51+
return False
52+
53+
with Kulka(ADDR) as kulka:
54+
for proba in range(10):
55+
if zgadnij(kulka, proba):
56+
break
57+
else:
58+
print("Porażka!")

0 commit comments

Comments
 (0)