wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Prova de jogos digitais 2 tri

Total questions: 20

Worksheet time: 15mins

Name
Class
Date
1.

O que a linha self.coluna = self.coluna + self.vel_x representa no método mover() do Pacman?

a)

Atualização do centro X com base na posição da matriz

b)

Verificação da colisão com fantasmas

c)

Movimento horizontal do Pac-Man baseado na velocidade

d)

Conversão de coordenadas da tela para o mapa

2.

Por que é necessário calcular self.centro_x = int(self.coluna * TAMANHO)?

a)

Para corrigir a posição do sprite na grade de pixels

b)

Para limitar a movimentação do Pac-Man à tela

c)

Para detectar colisão com o mapa

d)

Para mover o Pac-Man mais rápido

3.

O que aconteceria se random.shuffle(direcoes) não fosse usado no movimento dos fantasmas?

a)

Os fantasmas se moveriam todos ao mesmo tempo

b)

Eles poderiam escolher sempre a mesma direção válida

c)

O jogo travaria após algumas iterações

d)

O Pac-Man não se moveria corretamente

4.

Por que o código utiliza if mapa[nova_linha][nova_coluna] == 0 antes de mover o fantasma?

a)

Para evitar que ele atravesse o Pac-Man

b)

Para detectar a colisão com pontos

c)

Para garantir que ele só se mova por caminhos livres

d)

Para gerar um som ao colidir

5.

O método desenhar() da classe Fantasma possui o seguinte código:

pygame.draw.circle(tela, self.cor, (self.centro_x, self.centro_y), self.tamanho // 2)

Qual é o propósito dessa linha?

a)

Desenhar um quadrado representando o fantasma

b)

Atualizar a posição do Pac-Man

c)

Desenhar o fantasma em sua posição atual na tela

d)

Criar uma animação

6.

Qual é a principal razão para o uso da constante TAMANHO no mapa?

a)

Determinar o número de pontos por célula

b)

Controlar a velocidade dos fantasmas

c)

Sincronizar o tamanho das células no mapa com a renderização

d)

Ajustar a cor dos elementos na tela

7.

O que a linha if evento.type == pygame.QUIT: faz dentro do loop principal?

a)

Reinicia a janela de jogo

b)

Atualiza o mapa

c)

Fecha o jogo corretamente

d)

Zera o placar

8.

Qual dos elementos abaixo não é controlado por coordenadas de grade (linha, coluna)?

a)

Posição do Pac-Man

b)

Posição do Fantasma

c)

Tamanho da janela

d)

Posição da célula da parede

9.

Suponha que um valor inválido como -1 fosse inserido no mapa. O que ocorreria?

a)

O Pygame lançaria erro automaticamente

b)

O personagem atravessaria as paredes

c)

Haveria erro ao acessar a cor da parede

d)

O personagem poderia se mover incorretamente ou travar

10.

O que representa a multiplicação 28 * 20 e 31 * 20 no código?

a)

Quantidade de pixels de cada personagem

b)

Resolução da tela baseada no número de colunas e linhas do mapa

c)

Número de fantasmas e vidas do jogador

d)

Frames por segundo

11.

Por que usamos int() ao calcular as posições de centro_x e centro_y?

a)

Para eliminar casas decimais e evitar erro de renderização

b)

Para acelerar a movimentação dos fantasmas

c)

Para criar múltiplos fantasmas ao mesmo tempo

d)

Para evitar que o Pac-Man passe por dentro das paredes

12.

Como o código impede que o Pac-Man atravesse paredes?

a)

Com um if que compara o valor da célula do mapa

b)

Usando colisão por bounding box

c)

Utilizando sensores lógicos no mapa

d)

Adicionando delay na movimentação

13.

Como são definidas as direções válidas para movimento dos fantasmas?

a)

As teclas pressionadas

b)

A leitura do arquivo de mapa

c)

A partir de uma lista embaralhada com vetores de direção

d)

Uma variável global que guarda o caminho ideal

14.

O que a estrutura for linha in range(len(mapa)): faz no método desenhar_mapa()?

a)

Percorre as linhas do mapa para exibir o placar

b)

Define a quantidade de comida disponível

c)

Renderiza graficamente todas as células

d)

Carrega o número de fantasmas

15.

Se quisermos mudar o tamanho do jogo para 960x680, o que deve ser alterado?

a)

A cor do Pac-Man

b)

O valor da constante TAMANHO

c)

A velocidade do personagem

d)

O número de fantasmas

16.

Como o código evita que os fantasmas fiquem presos em paredes?

a)

Fazem backtracking se colidem

b)

Sorteiam direções até encontrar uma célula com valor 0

c)

Usam algoritmos de pathfinding

d)

Espelham o movimento do Pac-Man

17.

Qual dessas variáveis representa a tela principal do jogo?

a)

pacman

b)

tela

c)

mapa

d)

centro_x

18.

O que indica o valor pygame.K_UP?

a)

Um comando para atualizar a tela

b)

Um identificador de evento de colisão

c)

A tecla de seta para cima sendo pressionada

d)

Um tipo de erro em tempo de execução

19.

O que acontece quando o jogador pressiona uma tecla de direção?

a)

O mapa muda de cor

b)

O Pac-Man gira

c)

A direção de movimento do Pac-Man é atualizada

d)

Um tipo de erro em tempo de execução

20.

Por que usamos random.shuffle(direcoes) na classe Fantasma?

a)

Para mudar a cor do fantasma

b)

Para evitar que o fantasma se mova em linha reta

c)

Para deixar o movimento imprevisível

d)

Para aumentar a velocidade