Turtle i rysowanie kwadratów – upiększenie kodu

0

Witam,
Dopiero zaczynam przygode z Pythonem i mam za zadanie zrobic krotki program, ktory narysuje x kwadratow, gdzie bok kazdego kolejnego bedzie o 20 dluzszy i bede one narysowane wokol poprzednich. Udalo mi sie napisac cos takiego i pytanie, czy da sie to jeszcze bardziej upiekszyc z uzyciem tylko petli 'for'?

from turtle import *
number_of_squares = 4
size = 20
posx = 0
posy = 0

for shape in range(1, number_of_squares + 1):
  for side in range(1, 5):
    forward(size)
    right(90)
  size = size + 20
  posx = posx - 10
  posy = posy + 10 
  penup()
  goto(posx, posy)
  pendown()
0

Krótki kod != upiększenie.
Napisz funkcję rysującą kwadrat i ją wykonaj w pętli ;)

0

Wiem wiem, o to chodzi, ze juz go skrocilem, dlatego sie zastanawiam czy da sie jeszcze bardziej.
Zapomnialem dopisac w pierwszym poscie, ze musi to tez byc bez uzycja funkcji. Bazujac tylko na petli for.

1

NIe wiem czemu stosujesz tak rozbudowanego range(). Zerknij na ten kod jak czegoś nie rozumiesz to pytaj :)

from turtle import *
number_of_squares = 4
size = 20
posx = 0
posy = 0
color=["RED","GREEN","BLUE"]
for shape in range(number_of_squares):
  pencolor(color[shape%3])
  for side in range(4):
    forward(size)
    right(90)
  size = size + 20
  posx = posx - 10
  posy = posy + 10 
  penup()
  goto(posx, posy)
  pendown()
0

Z rangem zasugerowalem sie innym zadaniem, w sumie nie wiem dlaczego.
Wszystko jest dla mnie jasne, ale kolorki niestety poki co sa niepotrzebne,
Dzieki

1 użytkowników online, w tym zalogowanych: 0, gości: 1