Home › Fóruns › Programação Básica › Modúlo 004 exercício 062 não sei oque fiz de errado
- Este tópico contém 3 respostas, 2 vozes e foi atualizado pela última vez 3 anos, 4 meses atrás por Antonio Cesar Ferreira Neves.
-
AutorPosts
-
-
1 de julho de 2021 às 01:25 #70400Antonio Cesar Ferreira NevesParticipante
programa { /* .Estudonauta Programação Básica .Modúlo - 004 .Exercicío - 062 .Listagem de dados .Objetivo:Ler Nome, sexo e salário de 6 pessoas para apresentar esses dados de forma tabular .Autor da resolução: Antonio Cesar */ //Biblíotecas inclua biblioteca Util inclua biblioteca Texto --> t inclua biblioteca Tipos funcao inicio() { //Declaração de variaveis cadeia nome[6], validador caracter sexo[6] real salario [6] //Cabeçalho do Exercicío escreva("\n-------------------------------------------------\n\tEXERCICÍO 062 - Listagem de dados") escreva("\n-------------------------------------------------\n") para(inteiro indice = 0; indice < Util.numero_elementos(salario); indice ++) { //Quebra de linha escreva("\n====== ", indice + 1, "° Cadastro ======\n") enquanto(verdadeiro) { //Entrada de dados escreva("Nome: ") leia(validador) se( Tipos.cadeia_e_inteiro (validador) ou Tipos.cadeia_e_real (validador) ou Tipos.cadeia_e_caracter (validador) ou Texto.caixa_alta(validador) == "MASCULINO" ou Texto.caixa_alta(validador) == "FEMININO") } enquanto(verdadeiro) { //lendo sexo escreva("Sexo [M/F]: ") leia(validador) //VERIFICANDO SE É MASCULINO se(t.caixa_alta(validador) == "M" ou t.caixa_alta(validador) == "MASCULINO" ) { sexo[indice] = 'M' pare } senao { //VERIFICANDO SE É FEMININO se(t.caixa_alta(validador) == "F" ou t.caixa_alta(validador) == "FEMININO") { sexo[indice] = 'F' pare } //Instruindo senao escreva("\n***ERRO*** dados ínvalidos digite f para feminino ou m para masculino") } } enquanto(verdadeiro) { //lendo salário escreva("Salário: R$") leia(validador) //verificando se o dado foi digitado adequadamente se(Tipos.cadeia_e_inteiro(validador,10) ou Tipos.cadeia_e_real(validador) ) { salario[indice] = Tipos.cadeia_para_real(validador) pare } //INSTRUINDO senao escreva("\n***ERRO*** O salário foi digitado incorretamente") } }//Fim_Para //Limpa Tela limpa() //Criação da Tabela escreva("\tListagem Completa\n--------------------------------------------------\n" + "NOME\t\t\tSEXO\t\tSALÁRIO\n--------------------------------------------------\n") //Saída de Dados para(inteiro indice = 0; indice < Util.numero_elementos(salario); indice ++) { escreva(nome[indice]) Util.aguarde(300) escreva("\t\t\t", sexo[indice]) Util.aguarde(300) escreva("\t\t", salario[indice], "\n") Util.aguarde(300) } escreva("\n--------------------------------------------------\n") } }
O problema está aqui`/*enquanto(verdadeiro)
{
//Entrada de dados
escreva(“Nome: “)
leia(validador)se( Tipos.cadeia_e_inteiro (validador) ou Tipos.cadeia_e_real (validador) ou
Tipos.cadeia_e_caracter (validador) ou Texto.caixa_alta(validador) == “MASCULINO”
ou Texto.caixa_alta(validador) == “FEMININO”)}*/`
-
1 de julho de 2021 às 01:30 #70401Antonio Cesar Ferreira NevesParticipante
vou substituir depois esse tanto de enquanto(verdadeiro) por um escolha caso. e na linha 27 devo ter dado tab na hora de copiar o código sem querer mas tirando a parte comentada da linha 36 a 46 o programa está funcionando
-
2 de julho de 2021 às 19:53 #70518Tutora MaylaMestre
Antonio, pelo que pude ver no seu código os principais problemas são:
- O bloco `se( Tipos.cadeia_e_inteiro (validador) ou Tipos.cadeia_e_real (validador) ou
Tipos.cadeia_e_caracter (validador) ou Texto.caixa_alta(validador) == “MASCULINO”
ou Texto.caixa_alta(validador) == “FEMININO”)não tem nada dentro, nem mesmo {} logo acontece o erro dizendo que as chaves
}que vem logo a seguir estão no lugar errado. Coloque as chaves
{}neste bloco
se` que este erro irá parar de acontecer - A função
cadeia_e_inteiro
necessita de 2 parâmetros, sendo o segundo a base numérica, o correto então seriaTipos.cadeia_e_inteiro(validador,10)
- O primeiro
enquanto(verdadeiro)
não tem nada que pare o laço, ou seja fica lendo nomes para sempre. Crie a condição para que o laço pare em algum momento.
Preste bastante atenção em como seu código está estruturado e se o máximo de leituras possíveis está realmente sendo o número desejado (6).
Tente corrigir esses erros, que atualmente impedem seu código de rodar, e se ainda houver dúvidas mande-nos para que continuemos te ajudando. - O bloco `se( Tipos.cadeia_e_inteiro (validador) ou Tipos.cadeia_e_real (validador) ou
-
2 de julho de 2021 às 21:20 #70520Antonio Cesar Ferreira NevesParticipante
Muito obrigado !!!
-
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.