Algorithm with structure PARA and SE

5

An algorithm that reads the name and gender of fifty-six people and gives the name and whether it is a man or a woman. In the end, report the total number of men and women. I need the program to run in VisualG.

I made this code but it is not working:

// Função :
// Autor :
// Data : 29/09/2015
// Seção de Declarações 
var
nome , sexo , feminino, masculino: literal
i : inteiro
inicio
escreva ("Digite seu nome: ", nome)
leia (nome)
escreva ("Digite seu sexo: ", sexo)
leia (sexo)
para i <- 1 ate 56 faca
se (sexo = feminino) entao
  escreva ("Seu nome é: ",nome "e seu sexo é: feminino", feminino)

fimse
fimpara
fimalgoritmo

I need to read the name and gender of 56 people in addition to the name and if it is male or female, and in the end let me know the total number of men and women, but I can not make the code work. / p>     

asked by anonymous 30.09.2015 / 01:47

3 answers

4

I've never used VisualG, but I think your code should look like this

var 
nome , sexo: literal
i, c, fem, masc : inteiro

inicio
  para c <- 1 ate 56 faca

    nome := ""
    sexo := "" 

    escreval ("Digite seu nome:")
    leia (nome)
    escreval ("Digite seu sexo (masculino/feminino):")
    leia (sexo)

    se(sexo = "feminino")
      fem := fem + 1
    senao
      masc := masc + 1
    fimse

    escreval("Seu nome é ", nome, " e seu sexo é ", sexo)
  fimpara    

escreval("foram cadastrados ", fem, " mulheres e ", masc, " homens")

fimalgoritmo

There are a few things you can do to improve, such as validating not to accept different entries for male and female for sex, but it is already much better than question code.

    
30.09.2015 / 02:36
3

It can be improved, but this works:

var
nome, sexo: caractere
i, m, f : inteiro
inicio
m <- 0
f <- 0
para i <- 1 ate 56 faca
  escreva("Digite seu nome: ")
  leia(nome)
  escreva("Digite seu sexo (m/f): ")
  leia(sexo)
  se (sexo = "f") entao
    escreval("Seu nome é: ", nome, " e seu sexo é: feminino")
    f <- f + 1
  senao
    escreval("Seu nome é: ", nome, " e seu sexo é: masculino")
    m <- m + 1
  fimse
fimpara
escreval("Total de mulheres: ", f)
escreval("Total de mulheres: ", m)
fimalgoritmo

Among the various problems including language syntax, I was not getting the data 56 times as the description requested, so I added a loop in this part. And I did print when I was male it did not.

    
30.09.2015 / 02:37
0
algoritmo "semnome"

// Função :

// Autor :

// Data : 09/02/2016

// Seção de Declarações 

var

nome, sexo, f, m: caracter

cntf, cntm, i, : inteiro

inicio

cntf := 0

cntm := 0

para i de 1 ate 56 faca

escreva ("Digite seu nome: ")

leia (nome)

escreva ("Digite seu sexo (f/ m): ")

leia (sexo)

se (sexo = f) entao

cntf := cntf + 1

senao

fimse

se (sexo = m) entao

cntm := cntm + 1

senao

fimse

fimpara

escreval ("Total de homens: ",cntm)

escreval ("total de mulheres: ",cntf)

fimalgoritmo
    
10.02.2016 / 02:58