Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

well2905

Algoritmo - erro

Recommended Posts

Amigos, ja desenvolvi quase todo, mas no final não consegui termina, na parte do Escrever.

O algoritmo:

 

Uma empresa decidiu fazer um levantamento sobre o perfil dos candidatos a vagas do seu quadro de funcionários. Para cada candidato, deve ser solicitado o sexo, a idade e se tem ou não experiência no serviço.

 

Algoritmo para ler os dados dos candidatos e, a seguir, calcular e imprimir as seguintes informações:

 

a) O número de candidatos do sexo feminino e o número de candidatos do sexo masculino;

B) A idade média dos homens que já têm experiência no serviço;

c) O número de mulheres com idade inferior a 30 anos e sem experiência no serviço;

d) A maior idade entre as mulheres que já têm experiência no serviço.

 

 

variaveis

numerico idade, numero_homens, media_homens, mulheres_maior, mulheres_menor,cand_fem, cand_masc, sem_exp

caracter experiencia, sexo

 

inicio

escrever "insira o sexo"

ler sexo

faca enquanto (sexo <> "fim")

escrever "insira a idade"

ler idade

escrever "ja tem experiência?"

ler experiencia

se (sexo = "f")ou (sexo = "feminino")entao

cand_fem:=cand_fem+1

senao

se (sexo="m")ou (sexo="masculino")entao

cand_masc:=cand_masc+1

fim_se

fim_se

se(sexo="m") ou (sexo="masculino") e (experiencia="s")entao

cand_masc:=cand_masc+idade

numero_homens:=numero_homens+1

fim_se

se(sexo="m") ou (sexo="masculino") e (experiencia="n")entao

sem_exp:=sem_exp+1

fim_se

se(sexo="f") ou (sexo="feminino") e(experiencia="s")entao

mulheres_maior:=idade

fim_Se

escrever "insira o sexo"

ler sexo

fim_enquanto

se (numero_homens <> 0) entao

media_homens := acim/numero_homens

fim_Se

escrever ---

escrever sem_exp

escrever mulheres_menor

escrever mulheres_maior

 

fim

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

naum entendi oq você naum esta conseguindo :s

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não consigo imprimir:

 

1 O número de candidatos do sexo feminino e o número de candidatos do sexo masculino;

2 A idade média dos homens que já têm experiência no serviço;

3 O número de mulheres com idade inferior a 30 anos e sem experiência no serviço;

4 A maior idade entre as mulheres que já têm experiência no serviço

 

deve ter algum erro nas variaveis.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia, Amigo.

 

Vamos tentar alterar um pouco este algoritmo para que ele fique mais fácil de entender? (Vou escrever como se fosse no VisualG e ai você altera para a linguagem ou metodologia que você quiser.

 

Que tal assim:

 

algoritmo "Pesquisa_IMasters"

// Função : Solucionar problema encontrado

// Autor : Prof. Arnaldo M. Hidalgo Jr.

// Data : 02/04/2009

// Seção de Declarações

var

Sexo, Exper : caracter //Sexo será "M" ou "F" (maiusculo ou não) e Exper (Experiencia - "S" ou "N")

Idade : inteiro // Receberá a idade do candidato

Contador : inteiro

MediaHomens : real // Acumulará a idade para depois calcularmos

TotalMasc, TotalFem, TotalMascExper, TotalFemExper, TotalMascSemExper, TotalFemSemExper : inteiro

NumMulher30 : inteiro

MaiorIdadeMulher : inteiro

inicio

contador <- 0

MaiorIdadeMulher <- 0

sexo <- "M" //somente para que ele entre no enquanto, depois sera lido novamente

enquanto ((sexo = "m") ou (sexo = "M") ou (Sexo = "F") ou (Sexo = "f")) faca

LimpaTela

EscrevaL ("Pesquisa IMasters")

EscrevaL ("Informe os dados dos candidatos")

EscrevaL ("Qualquer sexo informado diferente de M ou F (maiusculo ou minusculo) encerrará o aplicativo.")

Escreva ("Informe o Sexo do Candidato (M para Masculino ou F para Feminino): ")

Leia (sexo)

Se ((sexo = "m") ou (sexo = "M") ou (Sexo = "F") ou (Sexo = "f")) entao

Contador <- Contador + 1

Escreva ("Informe a idade (inteira) do candidato ",contador, ": ")

Leia (idade)

Escreva ("Informe S se tem experiencia e N se não tem experiencia: ")

Leia (Exper)

Se ((Sexo = "m") ou (Sexo = "M")) entao

TotalMasc <- TotalMasc + 1

Se ((Exper = "S") ou (Exper = "s")) entao

MediaHomens <- MediaHomens + Idade

TotalMascExper <- TotalMascExper + 1

Senao

Se ((Exper = "N") ou (Exper = "n")) entao

TotalMascSemExper <- TotalMascSemExper + 1

Senao

Escreva ("Você informou um dado inválido. O programa será encerrado.")

Sexo <- "D" //poderia ser qualquer letra diferente de M ou F.

FimSe

FimSe

Senao

Se ((Sexo = "F") ou (Sexo = "f")) entao

Se (Idade > MaiorIdadeMulher) entao

MaiorIdadeMulher <- Idade

FimSe

TotalFem <- TotalFem + 1

Se ((Exper = "S") ou (Exper = "s")) entao

TotalFemExper <- TotalFemExper + 1

Senao

Se ((Exper = "N") ou (Exper = "n")) entao

TotalFemSemExper <- TotalFemSemExper + 1

Se (Idade >=30) entao

NumMulher30 <- NumMulher30 + 1

FimSe

senao

EscrevaL ("Experiência Informada invalida. O programa será fechado...")

Sexo <- "D"

FimSe

FimSe

FimSe

FimSe

Senao

EscrevaL ("Você informou um sexo inválido e o programa será encerrado. Obrigado por votar...")

FimSe

FimEnquanto

EscrevaL ("Foram Informados ",contador, "candidatos")

MediaHomens <- MediaHomens / TotalMascExper

EscrevaL ("O total de Homens foi de ",totalMasc, " e de mulheres ",TotalFem)

EscrevaL ("Homens com Experiência: ",TotalMascExper)

EscrevaL ("Homens sem Experiência: ",TotalMascSemExper)

EscrevaL ("Mulheres com Experiência: ",TotalFemExper)

EscrevaL ("Mulheres sem Experiência: ",TotalFemSemExper)

EscrevaL ("Mulheres com mais de 30 anos sem experiência: ",NumMulher30)

EscrevaL ("Mulher de maior idade com experiência: ",MaiorIdadeMulher)

EscrevaL ("A média de idade entre os homens com experiência é de ",mediaHomens:4:2)

fimalgoritmo

 

Obs.: Qualquer dúvida, avise-me...

 

Abraços e espero ter ajudado.

 

Arnaldo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.