Home › Fóruns › Programação Básica › Exercício 53 – Erro de compilação – Portugol
- Este tópico contém 3 respostas, 3 vozes e foi atualizado pela última vez 1 mês atrás por
Tutora Jessica.
-
AutorPosts
-
-
14 de novembro de 2024 às 15:53 #146802
João Vitor do Prado Rosa Constantino
ParticipanteApós tentar fazer o código sozinho e estar dando erro de compilação na linha 0, e o erro de “Existem trechos de código onde a variável pode não ter sido inicializada”. Assisti a aula de resolução de exercício do mesmo. Entretanto ao fazer um novo arquivo com o mesmo código o mesmo aparece os mesmo erros na Linha 0 : “Erro na compilação!” e “Existem trechos de código onde a variável pode não ter sido inicializada”
Gostaria de entender o porque estar dando esses erros…
Abaixo o código:programa
{inclua biblioteca Tipos –> t
funcao inicio()
{
cadeia teclado
inteiro num, soma = 0, cont = 1
caracter resp
faca{
enquanto (verdadeiro){
escreva(“——————————\n”)
escreva(” VALOR “,cont,” \n”)
escreva(“——————————\n”)
escreva(“Digite um número (entre 1 e 10) : “)
leia(teclado)
se (t.cadeia_e_inteiro(teclado, 10)) {
num = t.cadeia_para_inteiro(teclado, 10)
se (num >= 1 e num <= 10) {
pare
} senao {
escreva(“<<ERRO>> O numero deve estar entre 1 e 10.\n”)
}
} senao {
escreva(“<<ERRO>> O valor deve ser um numero inteiro.\n”)
}
}
cont++
soma += num
enquanto (verdadeiro) {
escreva(“Quer continuar? [S/N] “)
leia(teclado)
se (t.cadeia_e_caracter(teclado)) {
resp = t.cadeia_para_caracter(teclado)
se (resp == ‘S’ ou resp == ‘s’ ou resp == ‘N’ ou resp == ‘n’) {
pare
} senao {
escreva(“<<ERRO>> Por favor, responda S ou N.\n”)
}
} senao {
escreva(“<<ERRO>> O valor deve ser uma letra.\n”)
}
}
} enquanto (resp == ‘S’ ou resp == ‘s’)
escreva(“\n============RESULTADOS============\n”)
escreva(“Ao todo você digitou “, cont, “\n”)
escreva(“A soma de todos eles foi “,soma)
}
} -
14 de novembro de 2024 às 17:06 #146809
Tutora Jessica
ModeradorOlá João, quando aparece esse erro no código é só você inicializar todas as suas variáveis, por exemplo:
Você iniciou as variáveis soma e cont, mas a variável num esta sem inicializar.
Inicialize a todas as variáveis e veja se vai funcionar direitinho .
-
10 de janeiro de 2025 às 20:29 #152519
Lucas Silva
Participante-Consegui implementar toda a lógica, mas estou com dificuldades na validação da pergunta ‘Quer continuar?’. Gostaria de ajuda para entender como implementar a validação dessa pergunta sem interferir no loop, de modo que, ao digitar um valor incorreto, apareça uma mensagem de erro, e ao digitar o valor correto, o programa retorne ao loop para digitar os valores ou saia do loop, dependendo do caractere digitado.-
programa
{inclua biblioteca Texto –> txt
inclua biblioteca Tipos –> tipfuncao inicio()
{
cadeia valor_inserido
inteiro valor_validado, contador, soma
caracter respostavalor_validado = 0
contador = 1
soma = 0
resposta = ‘ ‘faca {
enquanto(verdadeiro) {
escreva(“\n————————–“)
escreva(“\n Valor ” +contador)
escreva(“\n————————–“)
escreva(“\nDigite um número entre 1 e 10: “)
leia(valor_inserido)
se(tip.cadeia_e_inteiro(valor_inserido, 10)) {
valor_validado = tip.cadeia_para_inteiro(valor_inserido, 10)
se (valor_validado > 0 e valor_validado <= 10) {
pare}senao {
escreva(“\n ======= !ERRO! =======”)
escreva(“\n Digite apenas números entre 1 e 10”)}
} senao {
escreva(“\n ======== !ERRO! ========”)
escreva(“\n Insira apenas números!”)}
}
soma += valor_validado
escreva(“\n——————–“)
escreva(“\nQuer continuar? [S/N] “)
leia(resposta)se (resposta == ‘N’ ou resposta == ‘n’) {
pare
}
contador += 1
} enquanto(resposta == ‘S’ ou resposta == ‘s’)
escreva(“\nAo todo você digitou ” +contador+ ” valores. “)
escreva(“\nA soma de todos eles foi ” +soma+ “.”)}
}
-
24 de março de 2025 às 18:09 #155667
Tutora Jessica
ModeradorOla Lucas, desculpa a demora na resposta a sua duvida permanece?
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.