# 64 цвета при кодировании каждого пикселя 6 битами: for i in range(64): # 2^6 = 64, от 0 до 63 print(f'{i:06b}') # Форматирование числа в двоичном виде с ведущими нулями ''' 0000 1000 0000 1000 0000 0110 000000 000001 000010 000011 000100 ... 111111 '''
from turtle import * # подключение всех методов (инструкций) библиотеки Turtle bgcolor("darkblue") # цвет фона shape("turtle") # форма черепашки pencolor("yellow") # цвет пера fillcolor("yellow") # цвет заливки pensize(2) # размер пера lt(90) # влево на 90 градусов fd(100) # вперёд на 100 bk(100) # назад на 100 speed(3) # скорость перемещения (1 - медленно, 10 - быстро, 0 - очень быстро ) for step in range(4): # 4 шагов цикла fd(100) # вперёд на 100 rt(90) # вправо 90 penup() # поднять перо rt(90) # вправо на 90 градусов fd(150) # вперёд на 100 lt(90) # влево на 90 градусов pendown() # опустить перо begin_fill() # готовность залить цветом фигуру, когда она будет нарисована for step in range(5): # повторить 5 fd(100) # вперёд на 100 rt(144) # вправо на 144 end_fill() # когда контур фигуры замкнут (цикл завершён) залить цветом фигуру done() # в конце программы
Пример 2
from turtle import * # подключение всех методов (инструкций) библиотеки Turtle shape("turtle") bgcolor("darkblue") # цвет фона pencolor("white") pensize(3) speed(1) penup() goto(-40, 40) pendown() goto(-40, 40) goto(40, 40) goto(40, -40) goto(-40, -40) goto(-40, 40) penup() goto(0, 0) done()
from turtle import * # подключение всех методов (инструкций) библиотеки Turtle shape("turtle") pensize(2) penup() lt(90) write("С НОВЫМ ГОДОМ!", font=('Arial', 20, 'normal')) bk(30) for pc in ["pink", "red", "orange", "darkblue", "green", "#FF00FF", "#000000"]: pencolor(pc) # переменная pc последовательно передает в функцию pencolor() значения элементов списка write(pc, font=('Arial', 20, 'normal')) # напечатать значение переменной pc bk(30) # сместиться назад на 20 пикселей done()
Круг
import time from turtle import * shape("turtle") pencolor("black") fillcolor("black") pensize(3) time.sleep(12) r1 = 25 ext1 = 180 circle(r1, ext1) r2 = -25 circle(r2, ext1) r3 = -50 circle(r3) rt(ext1) begin_fill() circle(r1, ext1) r2 = -25 circle(r2, ext1) r3 = -50 circle(r3, ext1) end_fill() done()
Написать программу, которая рисует фигуру, показанную на иллюстрации.
http://judge.mipt.ru/mipt_cs_on_python3/labs/lab2.html РОБОТ
ml = move_left #Пройти n клеток влево (по умолчанию n = 1) mr = move_right #Пройти n клеток вправо (по умолчанию n = 1) mu = move_up #Пройти n клеток вверх (по умолчанию n = 1) md = move_down #Пройти n клеток вниз (по умолчанию n = 1) wu = wall_is_above #если сверху стена, возвращает True, иначе — False wd = wall_is_beneath #если снизу стена, возвращает True, иначе — False wl = wall_is_on_the_left #если слева стена, возвращает True, иначе — False wr = wall_is_on_the_right #если справа стена, возвращает True, иначе — False fill = fill_cell #Закрасить текущую клетку #cell_is_filled #Возвращает True, если текущая клетка закрашена #mov #Поместить значение v в регистр r
Пример решения первой задачи
#!/usr/bin/python3 from pyrob.api import * @task def task_1_1(): #pass mr(2) # Пройти 2 клетки вправо или: move_right(2) md(1) # Пройти 1 клетку вниз или: move_down(2) if __name__ == '__main__': run_tasks()