Код IT Загрузка примера кода…

Python main.py
def bresenham(x0, y0, x1, y1):
    """Генератор пикселей отрезка (целочисленный Брезенхем)."""
    dx = abs(x1 - x0)
    dy = abs(y1 - y0)
    sx = 1 if x0 < x1 else -1
    sy = 1 if y0 < y1 else -1
    err = dx - dy
    x, y = x0, y0
    while True:
        yield x, y
        if x == x1 and y == y1:
            break
        e2 = 2 * err
        if e2 > -dy:
            err -= dy
            x += sx
        if e2 < dx:
            err += dx
            y += sy

# Мини-"растр" 12×8 для отрезка (1,1)— (10,6)
w, h = 12, 8
grid = [['.' for _ in range(w)] for _ in range(h)]
for x, y in bresenham(1, 1, 10, 6):
    grid[h - 1 - y][x] = '#'
print('\n'.join(''.join(row) for row in grid))
def bresenham(x0, y0, x1, y1):
    """Генератор пикселей отрезка (целочисленный Брезенхем)."""
    dx = abs(x1 - x0)
    dy = abs(y1 - y0)
    sx = 1 if x0 < x1 else -1
    sy = 1 if y0 < y1 else -1
    err = dx - dy
    x, y = x0, y0
    while True:
        yield x, y
        if x == x1 and y == y1:
            break
        e2 = 2 * err
        if e2 > -dy:
            err -= dy
            x += sx
        if e2 < dx:
            err += dx
            y += sy

# Мини-"растр" 12×8 для отрезка (1,1)— (10,6)
w, h = 12, 8
grid = [['.' for _ in range(w)] for _ in range(h)]
for x, y in bresenham(1, 1, 10, 6):
    grid[h - 1 - y][x] = '#'
print('\n'.join(''.join(row) for row in grid))