Encontrado 'ValorLogico' como filho de 'MenosUnario', não esperado: 'verdadeiro' (linha 18, posição 21)
Código
programa
{
funcao inicio()
{
// Variáveis principais
cadeia nome_turma, turma_vencedora
real melhor_media, media_turma, soma_notas
inteiro quantidade_alunos, nota, aluno
booleano continuar // Usamos o tipo booleano diretamente
// Inicializa variáveis
melhor_media <- 0
media_turma <- 0
soma_notas <- 0
quantidade_alunos <- 0
nota <- 0
aluno <- 0
continuar <- verdadeiro // Usando o valor logico verdadeiro
escreva("Bem-vindo à Olimpíada de Conhecimentos Gerais!\n")
// Loop principal para entrada de dados
enquanto (continuar)
{
escreva("\nDigite o nome da turma ou digite 'SAIR' para finalizar: ")
leia(nome_turma)
// Condição para encerrar o programa
se (nome_turma == "SAIR")
{
escreva("\nFinalizando...\n")
continuar <- falso // Alteramos para falso para sair do loop
} // Fim do 'se'
escreva("Quantos alunos estão na turma ", nome_turma, "? ")
leia(quantidade_alunos)
soma_notas <- 0
// Leitura das notas dos alunos
aluno <- 1
enquanto (aluno <= quantidade_alunos)
{
escreva("Digite a nota do aluno ", aluno, " (entre 0 e 10): ")
leia(nota)
// Validar nota
enquanto (nota < 0 ou nota > 10)
{
escreva("Nota inválida! Digite novamente (entre 0 e 10): ")
leia(nota)
} // Fim do 'enquanto'
soma_notas <- soma_notas + nota
aluno <- aluno + 1 // Incremento manual
} // Fim do 'enquanto'
// Cálculo da média da turma
media_turma <- soma_notas / quantidade_alunos
escreva("A média da turma ", nome_turma, " é: ", media_turma, "\n")
// Verificar se essa turma tem a melhor média
se (media_turma > melhor_media)
{
melhor_media <- media_turma
turma_vencedora <- nome_turma
} // Fim do 'se'
} // Fim do 'enquanto'
// Exibir o resultado final
escreva("\nA turma vencedora foi: ", turma_vencedora, " com a melhor média: ", melhor_media, "\n")
}
}
Descrição do problema
O seu código possui 1 erro de compilação:
Código
Comentários adicionais
No response