You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A função 'encontrouTesouro' deve retornar um valor (linha 124, posição 4)
A função 'gerarNumeroAleatorio' deve retornar um valor (linha 134, posição 4)
Variável não declarada: retornar (linha 129, posição 12)
Variável não declarada: retornar (linha 131, posição 8)
⚠️ Durante essa fase experimental, o código ainda será executado mesmo com erros, porém se não corrigi-los, a execução abaixo pode exibir mensagens de erro em inglês ou sem explicação.
Caso acredite que o erro não faça sentido, por favor, abra uma issue em https://github.com/dgadelha/Portugol-Webstudio/issues/new/choose e anexe o código que você está tentando executar.
O seu programa irá iniciar abaixo -
⛔ Função não declarada: simboloRelogio
Programa finalizado. Tempo de execução: 59 milissegundos
Código
programa
{
// Declaração de variáveis globaisinteiro labirinto[5][5]
inteiro posX = 0, posY = 0inteiro tesouroX, tesouroY
inteiro direcao // Variável para capturar o movimento do jogadorfuncaoinicio()
{
// Inicializa o labirinto e posiciona o tesouro
inicializarLabirinto()
// Loop principal do jogoenquanto (nao encontrouTesouro())
{
limparTela()
exibirLabirinto()
escrever("\nVocê está na posição: (", posX, ", ", posY, ")")
escrever("\nEscolha um movimento:")
escrever("\n1 - Cima | 2 - Baixo | 3 - Esquerda | 4 - Direita")
leia(direcao) // Captura a direção escolhida pelo jogador
moverJogador(direcao)
}
// Mensagem de vitória
limparTela()
exibirLabirinto()
escrever("\nParabéns! Você encontrou o tesouro na posição (", tesouroX, ", ", tesouroY, ")!")
}
funcaoinicializarLabirinto()
{
// Inicializa o labirinto com caminhos livres (0) e paredes (1)para (inteiro i = 0; i < 5; i++)
{
para (inteiro j = 0; j < 5; j++)
{
se (gerarNumeroAleatorio(0, 100) < 30) // 30% de chance de ser uma parede
{
labirinto[i][j] = 1
}
senao
{
labirinto[i][j] = 0
}
}
}
// Garante que a posição inicial e final sejam acessíveis
labirinto[0][0] = 0
tesouroX = gerarNumeroAleatorio(0, 4)
tesouroY = gerarNumeroAleatorio(0, 4)
// Certifica que o tesouro não está na posição inicialenquanto (tesouroX == 0e tesouroY == 0)
{
tesouroX = gerarNumeroAleatorio(0, 4)
tesouroY = gerarNumeroAleatorio(0, 4)
}
labirinto[tesouroX][tesouroY] = 2// Define o tesouro
}
funcaoexibirLabirinto()
{
para (inteiro i = 0; i < 5; i++)
{
para (inteiro j = 0; j < 5; j++)
{
se (i == posX e j == posY)
{
escrever(" J ") // Posição do jogador
}
senaose (labirinto[i][j] == 1)
{
escrever(" # ") // Parede
}
senaose (labirinto[i][j] == 2)
{
escrever(" T ") // Tesouro
}
senao
{
escrever(" . ") // Caminho livre
}
}
escrever("\n")
}
}
funcaomoverJogador(inteiro movimento)
{
inteiro novoX = posX, novoY = posY
// Estrutura de decisão para o movimentoescolha (movimento)
{
caso1: // Cima
novoX = novoX - 1caso2: // Baixo
novoX = novoX + 1caso3: // Esquerda
novoY = novoY - 1caso4: // Direita
novoY = novoY + 1caso contrario:
escrever("\nMovimento inválido!")
} // Fim da estrutura escolha-caso// Verifica se a nova posição é válidase (novoX >= 0e novoX < 5e novoY >= 0e novoY < 5e labirinto[novoX][novoY] != 1)
{
posX = novoX
posY = novoY
}
senao
{
escrever("\nMovimento inválido ou parede encontrada!")
esperar(1000) // Pausa para o jogador ler o aviso
}
}
funcao logico encontrouTesouro()
{
// Retorna verdadeiro se o jogador encontrar o tesourose (posX == tesouroX e posY == tesouroY)
{
retornar verdadeiro
}
retornar falso
}
funcao inteiro gerarNumeroAleatorio(inteiro min, inteiro max)
{
// Gera um número pseudoaleatório entre min e max
retornar ((min + ((max - min + 1) * mod(simboloRelogio(), 1000) / 1000)))
}
}
Comentários adicionais
No response
The text was updated successfully, but these errors were encountered:
Descrição do problema
⛔ O seu código possui 4 erros de compilação:
Caso acredite que o erro não faça sentido, por favor, abra uma issue em https://github.com/dgadelha/Portugol-Webstudio/issues/new/choose e anexe o código que você está tentando executar.
⛔ Função não declarada: simboloRelogio
Programa finalizado. Tempo de execução: 59 milissegundos
Código
Comentários adicionais
No response
The text was updated successfully, but these errors were encountered: