• Nie Znaleziono Wyników

Python Turtle grafika żółwia

N/A
N/A
Protected

Academic year: 2022

Share "Python Turtle grafika żółwia"

Copied!
12
0
0

Pełen tekst

(1)

1

Wstęp do programowania w języku Python

Python Turtle – grafika żółwia

ŚCIĄGAWKA (klasa 7)

Ekran strony create.withcode.uk, na której tworzymy programy w Pythonie:

Na początku programu MUSI być:

import turtle t = turtle.Turtle()

(t to nazwa “naszego” żółwia) Podstawowe ruchy żółwia

Podstawowe operacje, to przemieszczanie się naszego żółwia. Oto gotowe przykłady najważniejszych funkcji:

t.fd(100) żółw t przesuwa się do przodu o 100 „kroków”

t.bk(50) żółw t cofa się w tył o 50 „kroków”

(2)

2

t.rt(90) żółw t obraca się w prawo o 90 stopni t.lt(45)

t.home()

żółw t obraca się w lewo o 45 stopni

żółw t przesuwa się na środek okienka (ciągle rysując) t.circle(40) żółw t rysuje okrąg o promieniu 40

---

Kolory i rozmiar

t.color(‘red’)

ustawienie czerwonego koloru dla linii którą rysuje żółw

( jako x możemy podać takie kolory jak

‘red',’blue',’green',’yellow',’black', 'white' i wiele innych)

Kolor można podać też inaczej, jako ilość koloru RGB ( czerwonego, zielonego i niebieskiego), np.

t.color(170,10,220)

liczby w nawiasie są z przedziału od 0 (brak tego koloru) do 255 (pełne nasycenie danym kolorem) t.pensize(8) ustawia grubość linii na 8 „pixeli”

t.pu() „podnieś pisak” – powoduje, że żółw przemieszcza się bez rysowania

t.pd() „opuść pisak” - żółw znowu rysuje

t.speed(10) ustawia prędkość żółwia na 10 „jednostek czasu”

t.write(‘Hej’) obok symbolu żółwia pojawia się napis Hej

---

(3)

3

Przykłady programów:

import turtle t = turtle.Turtle() t.fd(100)

t.lt(90) t.fd (100) t.write (‘Hej’)

import turtle

t = turtle.Turtle()

t.color(‘red’)

t.pensize(2)

t.circle(50)

t.penup()

t.fd(100)

t.pendown()

t.color('blue')

t.circle(50)

(4)

4

Losowanie liczby z danego przedziału i wyświetlenie wyniku:

najpierw po import turtle trzeba zaimportować nową bibliotekę:

import random

a w samym programie np. tak:

los=random.randrange(0,100) losuje liczbę naturalną z przedziału od 0 do 99 (100 jest tutaj granicą)

Przykład użycia:

Kolejne linie programu Wyjaśnienie „co się dzieje”

import turtle import random

Wczytanie bibliotek: grafiki żółwia i losowania liczb

t = turtle.Turtle()

nasz żółw ma nazwę – to t

los = random.randrange(0,100)

losowanie liczby z przedziału od 0 do 99 (wylosowana liczba jest zapamiętywana pod nazwą los)

los2 = random.randrange(0,360)

losowanie liczby z przedziału od 0 do 359 (wylosowana liczba jest zapamiętywana jako zmienna los2)

t.fd(los)

żółw rysuje odcinek o wylosowaną

ilość pikseli

t.rt(los2)

żółw obraca się w prawo o

wylosowany kąt

Oto efekt – żółw przesunął się o wylosowane 82 piksele i obrócił o wylosowane 253 stopnie

print(los) print(los2)

nad białym oknem „dla żółwia”, program wypisuje liczby, które wylosował

(5)

5

Pętla for: (najlepiej zobacz przykład)

Program Wyjaśnienie „co się dzieje”

Program będzie 4 razy powtarzał pewną pętlę.

Zmienna i (licznik) może nazywać się inaczej.

To co ma być wykonane wielokrotnie (w pętli) jest wcięte (odsunięte od lewego marginesu.

Co będzie powtarzane 4 razy? Naprzód 100 czyli t.fd(100) i Obróć się w prawo o 90 stopni, czyli t.rt(90)

Efekt działania programu:

(6)

6

Czyli ogólnie pętla for ma taką „budowę”:

Jeszcze dwa przykłady:

Przykład 1 - rysowanie 10-ciokąta foremnego o boku 40

Pętla powtórzy się 10 razy: t.fd(40) i t.rt(36) (dlaczego 36? Bo 360:10 = 36º)

(7)

7

Przykład 2 – program będzie w pętli 500 razy losował ilość pikseli „do przodu”

(z przedziału od 0 do 19) i kąt, o jaki obróci się żółw (z przedziału od 0 do 359), a następnie o tyle co wylosuje, będzie przesuwał i obracał żółwia.

Jak program „coś” napisze na ekranie?

print(‘Witaj pasikoniku!’)

Tekst do wyświetlenia musi być w nawiasie, a przed nim i za nim muszą być apostrofy lub cudzysłowia.

Oto efekt działania tego programu:

(8)

8

Jak wprowadzić dane tekstowe?

Chcemy, aby program zapytał nas „o coś”, my z klawiatury napiszemy „to coś”, a program to zapamięta i w pewnym momencie użyje.

Przykład: Pytanie o nasze imię

i=input(‘Jak masz na imię?’)

Wyjaśnienia:

Przykład Program, który:

 Zapyta o Twoje imię,

 Zapyta o imię chłopaka (dziewczyny),

 Napisze:

Jutro (tu wstawi Twoje imię) i (tu wstawi imię chłopaka lub dziewczyny) biorą ślub!

Oto ten program:

dz=input('Twoje imię') ch=input('Imię chłopaka')

print("Jutro ",dz, " i ",ch, " biorą ślub!")

(9)

9

Jak wprowadzić dane liczbowe?

Wprowadzając dane liczbowe musimy wiedzieć, czy będzie to liczba całkowita (bez przecinka) czy wymierna (z przecinkiem).

UWAGA! Python używa w liczbach kropek! (np. dwa i pół to 2.5)

Przykład Program, który:

 Zapyta o ilość kupionych jabłek (przyjmujemy, że będzie to liczba bez przecinka),

 Zapyta o cenę jabłek (przyjmujemy, że będzie to liczba bez przecinka)

 Obliczy rachunek mnożąc ilość przez cenę,

 Napisze:

Do zapłaty jest (tutaj wstawi wyliczony rachunek) zł

Oto ten program:

ilosc=int(input('Ile kupiono')) cena=int(input('Jaka cena za kg')) rach=ilosc*cena

print("Do zapłaty jest ", rach , " zł")

Przykład To samo, co w poprzednim przykładzie , ale teraz tak ilość, jak i cena mogą być liczbą z przecinkiem (w Pythonie używamy kropki)

Oto ten program:

(10)

10

ilosc=float(input('Ile kupiono')) cena=float(input('Jaka cena za kg')) rach=ilosc*cena

print("Do zapłaty jest ", rach , " zł")

Przykład Program, który:

 Zapyta ile wynosi podstawa trójkąta,

 Zapyta ile wynosi wysokość trójkąta,

 Obliczy pole tego trójkąta,

 Napisze:

Pole powierzchni tego trójkąta wynosi (tutaj wstawi wyliczone pole)

Oto ten program:

a=float(input('Podaj długość podstawy trójkąta')) h=float(input('Podaj wysokość tego trójkąta')) P=(a*h)/2

print("Pole tego trójkąta wynosi ", P)

Przykład Program, który zapyta jaki kąt ma narysować (w stopniach), po czym zółw narysuje ten kąt.

Oto ten program:

import turtle t=turtle.Turtle()

kat=int(input('Podaj, ile stopni ma mieć narysowany kąt?')) t.fd(180)

t.bk(180) t.lt(kat) t.fd(180)

(11)

11

Oto efekt działania tego programu:

Przykład Program, który zapyta:

- jaki wielokąt foremny ma narysować, czyli ile ma mieć boków, - jakiej długości ma być bok tego wielokąta,

- jaka ma być grubość boków,

po czym żółw narysuje ten wielokąt.

Oto ten program:

import turtle t=turtle.Turtle()

boki=int(input('Ile boków ma mieć wielokąt foremny?')) a=int(input('Jaką długość ma mieć bok wielokąta?'))

gruby=int(input('Jaką grubość mają mieć boki wielokąta?')) t.pensize(gruby)

kat=360/boki

for i in range (0,boki):

t.fd(a) t.lt(kat)

(12)

12

Oto efekt działania tego programu:

Cytaty

Powiązane dokumenty

Podziwiałem Wałęsę i nadal uważam że jego wielką zasługą było to, żeby się nie zapędzić w taki sposób, że jak będzie interwencja i po tej interwencji zaczną się procesy,

Dla dodatniej liczby naturalnej n znaleźć wzór na największą potęgę liczby pierwszej p dzielącą n!4. Rozłożyć na czynniki pierwsze

Pierwsza z nich jest dwa razy większa od drugiej, a druga trzy razy mniejsza od trzeciej.. Znajdź

Ka»de zadanie prosimy odda¢ na oddzielnej, podpisanej kartce.. Czas pracy:

Pamiętam, że całe to nasze kółko, nie wiem, ile tam nas było, byłyśmy ubrane w czarne trykoty, tak jakby rajstopy, których wtedy jeszcze nie było, czarne jakieś trampeczki,

23. Dana jest liczba rzeczywista a. Niech P będzie dowolnym punktem wewnątrz czworokąta wypukłego ABCD. Udowod- nij, że środki ciężkości trójkątów 4P AB, 4P BC, 4P CD, 4P

Punkty te połączono między sobą i z wierzchołkami trójkąta nieprzecinającymi się odcinkami tak, iż ”duży” trójkąt podzielono na mniejsze trójkąty.. Udowodnij, że

Na tych pozycjach zapisu dwójkowego, na których liczby a i b mają różne cyfry, liczba x może mieć