Уберите из кода программы две лишние команды, которые не соответствуют рисованию прямоугольника.
import pygame
pygame.init()
pygame.display.set_caption("figures")
pygame.draw.circle(screen,[0,0,255],[170,60],50,0)
pygame.draw.rect(screen,[255,0,0],[80,130,180,200],0)
screen.blit(background,(0,0))
Все просто.
Если код равномерный двоичный, а мощность алфавита 26 символов, нужно подобрать такое количество бит (двоичных разрядов), чтобы оно могло вместить 26 комбинаций.
1 бит - 2 комбинации (2¹ = 2)
2 бита - 4 комбинации (2² = 4)
3 бита - 8 комбинаций (2³ = 8)
4 бита - 16 комбинаций (2⁴ = 16)
5 бит - 32 комбинации (2⁵ = 32)
Видно, что 4 бита мало, а 5 бит кодируют даже не 26, а 32 комбинации. Следовательно, под код одного символа нужо 5 бит.
А если символов 20, то в 20 раз больше. 5×20 = 100 бит. Это и есть нужная нам длина.
Все просто.
Если код равномерный двоичный, а мощность алфавита 26 символов, нужно подобрать такое количество бит (двоичных разрядов), чтобы оно могло вместить 26 комбинаций.
1 бит - 2 комбинации (2¹ = 2)
2 бита - 4 комбинации (2² = 4)
3 бита - 8 комбинаций (2³ = 8)
4 бита - 16 комбинаций (2⁴ = 16)
5 бит - 32 комбинации (2⁵ = 32)
Видно, что 4 бита мало, а 5 бит кодируют даже не 26, а 32 комбинации. Следовательно, под код одного символа нужо 5 бит.
А если символов 20, то в 20 раз больше. 5×20 = 100 бит. Это и есть нужная нам длина.