Visualg syntax error (Portugol)
When placing the code in this way and entering this data "faults = 0 proofs = 5, 9, 7.2 work = 10.5 age = 15 result = failed", the same as the error when compiling, presents syntax error in the"Result
var
Notafim, Faltas, nota1, nota2, nota3: Real
Idade, notatrab, Media, Peso1, Peso2: Real
Result, Reprovado: Caractere
inicio
// Seção de Comandos
Escreva ("Digite o número de faltas: ")
Leia (Faltas)
Escreva ("Digite a nota da primeiroa prova: ")
Leia (nota1)
Escreva ("Digite a nota da segunda prova: ")
Leia (nota2)
Escreva ("Digite a nota da terceira prova: ")
Leia (nota3)
Escreva ("Digite a nota do trabalho final: ")
Leia (notatrab)
Limpatela
Se (nota1>nota2) e (nota2>nota3) entao
Media <- (nota1+nota2) / 2
Senao
Se(nota1>nota2) e (nota2<nota3) entao
Media <- (nota1+nota3) / 2
Senao
Media <- (nota2+nota3) / 2
Fimse
Fimse
Se Faltas < 5 entao
Peso1 <- 3
Senao
Se (Faltas > 5) e (Faltas < 10) entao
Peso1 <- 2
Senao
Peso1 <- 1
Fimse
Fimse
Se Idade <= 17 entao
Peso2 <- 1
Senao
Se Idade >= 18 <= 50 entao
Peso2 <- 2
Senao
Peso2 <- 3
Fimse
Fimse
Notafim <- Media * Peso1 + notatrab * Peso2
Se Notafim <= 50 entao
Result <- Reprovado
Senao
Se (Nofim > 50) e (Notafim < 70) entao
Result <- Regular
Senao
Se (Nofim > 70) e (Notafim < 80) entao
Result <- Bom
Senao
Se (Nofim > 80) e (Notafim < 90) entao
Result <- Muito Bom
Senao
Result <- Excelente
Fimse
Fimse
Fimse
Fimse
Escreval
Escreval ("Este foi o resultado do aluno",Result)
Escreval
0
Author: Luiz Augusto, 2019-03-20
1 answers
Note that you have declared the variable Result
as a character, so it will have to be given a 'value' character, note that Result <- Reprovado
is different from Result <- "Reprovado"
Note : Be careful to declare variables with uppercase and lowercase letters this may be a problem in the future!
Note 2 : I removed the variable "failed", I believe you were trying to declare it as a character to have resolve the syntax error.
Your Code will correctly stay like this:
Var
// Seção de Declarações das variáveis
Notafim, Faltas, nota1, nota2, nota3: Real
Idade, notatrab, Media, Peso1, Peso2: Real
Result : Caractere
Inicio
// Seção de Comandos
Escreva ("Digite o número de faltas: ")
Leia (Faltas)
Escreva ("Digite a nota da primeiroa prova: ")
Leia (nota1)
Escreva ("Digite a nota da segunda prova: ")
Leia (nota2)
Escreva ("Digite a nota da terceira prova: ")
Leia (nota3)
Escreva ("Digite a nota do trabalho final: ")
Leia (notatrab)
Limpatela
Se (nota1>nota2) e (nota2>nota3) entao
Media <- (nota1+nota2) / 2
Senao
Se(nota1>nota2) e (nota2<nota3) entao
Media <- (nota1+nota3) / 2
Senao
Media <- (nota2+nota3) / 2
Fimse
Fimse
Se Faltas < 5 entao
Peso1 <- 3
Senao
Se (Faltas > 5) e (Faltas < 10) entao
Peso1 <- 2
Senao
Peso1 <- 1
Fimse
Fimse
Se Idade <= 17 entao
Peso2 <- 1
Senao
Se Idade >= 18 <= 50 entao
Peso2 <- 2
Senao
Peso2 <- 3
Fimse
Fimse
Notafim <- Media * Peso1 + notatrab * Peso2
Se Notafim <= 50 entao
Result <- "Reprovado"
Senao
Se (Nofim > 50) e (Notafim < 70) entao
Result <- "Regular"
Senao
Se (Nofim > 70) e (Notafim < 80) entao
Result <- "Bom"
Senao
Se (Nofim > 80) e (Notafim < 90) entao
Result <- "Muito Bom"
Senao
Result <- "Excelente"
Fimse
Fimse
Fimse
Fimse
Escreval
Escreval ("Este foi o resultado do aluno",Result)
Escreval
Fimalgoritmo
0
Author: Luiz Augusto, 2019-03-20 00:22:37