Решение:
В данном задании нужно выбрать правильный вариант кода, который создает и размещает спрайт. Рассмотрим предложенные варианты:
- Вариант 1: `sc = pygame.display.set_mode((400, 400)) sun = pygame.image.load('sun.png') sc.blit(sun, 100,100)` — В этом варианте функция `blit` вызывается с тремя аргументами: сам спрайт (`sun`), координата X (`100`) и координата Y (`100`). Это некорректное использование функции `blit` в Pygame, которая ожидает кортеж из двух координат (X, Y).
- Вариант 2: `sc = pygame.display.set_mode((400, 400)) sun = pygame.load('sun.png') sc.blit(sun, (100,100))` — В этом варианте используется `pygame.load` вместо `pygame.image.load`. Функция `pygame.load` является устаревшей и может вызвать проблемы. Правильнее использовать `pygame.image.load` для загрузки изображений.
- Вариант 3: `sc = pygame.display.set_mode((400, 400)) sun = pygame.image.load('sun.png') blit(sun, (100,100))` — В этом варианте функция `blit` вызывается без указания объекта, к которому она принадлежит (например, `sc.blit(...)`). Это приведет к ошибке, так как `blit` является методом объекта `Surface` (в данном случае `sc`).
- Вариант 4: `sc = pygame.display.set_mode((400, 400)) sun = pygame.image.load('sun.png') sc.blit(sun, (100,100))` — Этот вариант кода является корректным. Создается окно с помощью `pygame.display.set_mode()`, изображение загружается с помощью `pygame.image.load()`, и затем спрайт (`sun`) размещается на экране (`sc`) с использованием метода `sc.blit()` с корректно переданными координатами в виде кортежа `(100,100)`.
Ответ: Четвертый вариант кода.