Wagner sz 1 Denunciar post Postado Maio 18, 2012 Desenvolva um programa que leia o nome de uma pessoa, o dia e o mês de seu nascimento e sem seguida apresente o nome da pessoa e o seu signo conforme a tabela abaixo (Dica: use a fórmula MESDIA = MES * 100 + DIA para definir o signo a que a pessoa pertence). algoritmo "semnome" funcao mesdia(m,d: inteiro): caractere var cal: inteiro inicio cal <-(m*100+d) se((cal>=0121) e (cal <=0219)) entao retorne escreval("É do signo de Aquário ") senao se((cal>=0220) e (cal <=0320)) entao retorne escreval("É do signo de Peixes ") senao se((cal>=0320) e (cal <=0420)) entao retorne escreval("É do signo de Àries ") senao se((cal>=0421) e (cal <=0520)) entao retorne escreval("É do signo de Touro ") senao se((cal>=0521) e (cal <=0620)) entao retorne escreval("É do signo de Gêmeos ") senao se((cal>=0621) e (cal <=0721)) entao retorne escreval("É do signo de Câncer ") senao se((cal>=0722) e (cal <=0822)) entao retorne escreval("É do signo de Leão ") senao se((cal>=0823) e (cal <=0922)) entao retorne escreval("É do signo de Virgem ") senao se((cal>=0923) e (cal <=1022)) entao retorne escreval("É do signo de Libra ") senao se((cal>=1023) e (cal <=1121)) entao retorne escreval("É do signo de Escorpião") senao se((cal>=1122) e (cal <=1221)) entao retorne escreval("É do signo de Sargitário ") senao retorne escreval("É do signo de Capricórnio ") fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse fimfuncao var nome,n: caractere mes,dia: inteiro inicio escreval("Digite o nome: ") leia(nome) escreval("Digite o mês de seu nascimento ") leia(mes) escreval("Digite o dia de seu nascimento ") leia(dia) n<-mesdia(mes,dia) escreval(nome, n) fimalgoritmo Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 18, 2012 sem você utilizar a tag [./code] o código fica bem "porco" pq n fica identado nem nd..o compilador deve ser bem ruim pq ele não aponta a linha onde o erro ocorre? []s Compartilhar este post Link para o post Compartilhar em outros sites
Wagner sz 1 Denunciar post Postado Maio 18, 2012 sem você utilizar a tag [./code] o código fica bem "porco" pq n fica identado nem nd..o compilador deve ser bem ruim pq ele não aponta a linha onde o erro ocorre? []s Ele diz que por exemplo "retorne escreval("É do signo de Gêmeos ")" tem que ser do tipo caracter, mas já é caracter, não? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 18, 2012 entaum uma coisa é você fazer assim: se((cal>=0121) e (cal <=0219)) entao retorne escreval("É do signo de Aquário ") senao outra totalmente diferente eh você fazer: caracter msg; se((cal>=0121) e (cal <=0219)) entao msg <- ("É do signo de Aquário ") ; senao . . retorne msg; Entenda que eu não sei corretamente a sintaxe do visualg apenas sei o portugol puro feito no papel, mais acho que deu pra você entender.. Compartilhar este post Link para o post Compartilhar em outros sites
Wagner sz 1 Denunciar post Postado Maio 18, 2012 entaum uma coisa é você fazer assim: se((cal>=0121) e (cal <=0219)) entao retorne escreval("É do signo de Aquário ") senao outra totalmente diferente eh você fazer: caracter msg; se((cal>=0121) e (cal <=0219)) entao msg <- ("É do signo de Aquário ") ; senao . . retorne msg; Entenda que eu não sei corretamente a sintaxe do visualg apenas sei o portugol puro feito no papel, mais acho que deu pra você entender.. Sakei cara, tenho que criar outra variável para a mensagem, já que dia e mes são inteiros nér. Valeu ae Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 18, 2012 bom na realidade eu qria te mostrar que você estava errando pq estava retornando um comando escreva.. você pode reduzir muitos suas linhas somente atribuindo a variavel 'msg' e no final da funcao retornar essa variavel uma vz soh ;D []s Compartilhar este post Link para o post Compartilhar em outros sites
Wagner sz 1 Denunciar post Postado Maio 18, 2012 bom na realidade eu qria te mostrar que você estava errando pq estava retornando um comando escreva.. você pode reduzir muitos suas linhas somente atribuindo a variavel 'msg' e no final da funcao retornar essa variavel uma vz soh ;D []s Mas então eu colocaria "É do signo..." fora da função? no algoritmo principal ? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 18, 2012 Como disse só mude os comandos para compilar: funcao mesdia(m,d: inteiro): caractere var cal: inteiro msg : caractere inicio cal <-(m*100+d) se((cal>=0121) e (cal <=0219)) entao msg <- ("É do signo de Aquário ") senao se((cal>=0220) e (cal <=0320)) entao msg <- ("É do signo de Peixes ") senao se((cal>=0320) e (cal <=0420)) entao msg <- ("É do signo de Àries ") senao se((cal>=0421) e (cal <=0520)) entao msg <- ("É do signo de Touro ") senao se((cal>=0521) e (cal <=0620)) entao msg <- ("É do signo de Gêmeos ") senao se((cal>=0621) e (cal <=0721)) entao msg <- ("É do signo de Câncer ") senao se((cal>=0722) e (cal <=0822)) entao msg <- ("É do signo de Leão ") senao se((cal>=0823) e (cal <=0922)) entao msg <- ("É do signo de Virgem ") senao se((cal>=0923) e (cal <=1022)) entao msg <- ("É do signo de Libra ") senao se((cal>=1023) e (cal <=1121)) entao msg <- ("É do signo de Escorpião") senao se((cal>=1122) e (cal <=1221)) entao msg <- ("É do signo de Sargitário ") senao msg <- ("É do signo de Capricórnio ") fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse retorne msg fimfuncao levando em conta que eu não estou fazendo testes nenhum e estou supondo que seu algoritmo já está ok qnd ao cálculo e comparações feitas... tente adaptar parecido ao seu programa. []s Compartilhar este post Link para o post Compartilhar em outros sites
Wagner sz 1 Denunciar post Postado Maio 18, 2012 Como disse só mude os comandos para compilar: funcao mesdia(m,d: inteiro): caractere var cal: inteiro msg : caractere inicio cal <-(m*100+d) se((cal>=0121) e (cal <=0219)) entao msg <- ("É do signo de Aquário ") senao se((cal>=0220) e (cal <=0320)) entao msg <- ("É do signo de Peixes ") senao se((cal>=0320) e (cal <=0420)) entao msg <- ("É do signo de Àries ") senao se((cal>=0421) e (cal <=0520)) entao msg <- ("É do signo de Touro ") senao se((cal>=0521) e (cal <=0620)) entao msg <- ("É do signo de Gêmeos ") senao se((cal>=0621) e (cal <=0721)) entao msg <- ("É do signo de Câncer ") senao se((cal>=0722) e (cal <=0822)) entao msg <- ("É do signo de Leão ") senao se((cal>=0823) e (cal <=0922)) entao msg <- ("É do signo de Virgem ") senao se((cal>=0923) e (cal <=1022)) entao msg <- ("É do signo de Libra ") senao se((cal>=1023) e (cal <=1121)) entao msg <- ("É do signo de Escorpião") senao se((cal>=1122) e (cal <=1221)) entao msg <- ("É do signo de Sargitário ") senao msg <- ("É do signo de Capricórnio ") fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse retorne msg fimfuncao levando em conta que eu não estou fazendo testes nenhum e estou supondo que seu algoritmo já está ok qnd ao cálculo e comparações feitas... tente adaptar parecido ao seu programa. []s Deu certo agora, na verdade também preciso desenvolver no papel mesmo em pseudocódigo, mas para ter certeza que ta certo nér... faço pelo visualg também xD' vlw's de novo E cara se entende de registros também? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 18, 2012 Opa entendo sim.. estou um pouco enferrujado pois voltei (espero eu) a ativa no fórum denovo.. iniciei um novo tópico se for uma dúvida diferente a discutida nesse, e vamo embora.. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites