olá sou novo aqui no fórum, tenho uma duvida que e não encontro a solução em lugar nenhum....
o problema é o seguinte, fiz um código que lê altura e sexo depois imprime masculina e feminina de altura.
quando digitava um numero na leitura do sexo dava erro e foi fácil de resolver pois se não for M ou F repete até ser M ou F.
já na altura teria que fazer um código como esse:
//se altura = literal então
//(código)
//fimse
achei que seria fácil também:
------------------------------
se altura = "" então |
|
(código) |
|
fimse |
------------------------------
mais não esta correto esse código alguém sabe a sintaxe correta ?
obrigado
código completo :
algoritmo "Media altura/sexo"
// Função :calcular medias com repita.
// Autor :Tuchi
// Data : 06/04/2015
// Seção de Declarações
var
altura, cont_m, cont_f, alt_m, alt_f, media_m, media_f : real
sexo, action : caractere
inicio
// Seção de Comandos
repita
escreval ("Informe sua altura:")
leia (altura)
escreval ("Informe seu sexo:")
leia (sexo)
se sexo = "m" entao
cont_m <- cont_m + 1
alt_m <- alt_m + altura
senao
se sexo = "f" entao
cont_f <- cont_f + 1
alt_f <- alt_f + altura
senao
repita
escreval("Sexo indefinido.")
escreval("Informe o sexo corretamente.")
leia (sexo)
ate (sexo = "m") ou (sexo = "f")
se sexo = "f" entao
cont_f <- cont_f + 1
alt_f <- alt_f + altura
fimse
se sexo = "m" entao
cont_m <- cont_m + 1
alt_m <- alt_m + altura
fimse
fimse
fimse
repita
escreval ("Deseja continuar?")
escrevaL ("sim ou nao ?")
leia (action)
se action = "sim" entao
fimse
se action = "nao" entao
se cont_m > 0 entao
media_m <- alt_m / cont_m
fimse
se cont_f > 0 entao
media_f <- alt_f / cont_f
fimse
escreval ("Media de altura masculina :",media_m)
escreval ("Meidia de altura feminina :",media_f)
fimse
outrocaso
ate (action = "sim") ou (action = "nao")
ate (action = "nao")
fimalgoritmo