Prévia do material em texto
Resolução Lista Complementar – Comando PARA 1) Escreva um algoritmo que determine todos os divisores de um número N informado pelo usuário. algoritmo “divisores”; inicio var numero, resto : inteiro; cont : inteiro; leia(numero); para cont de 1 ate numero faca resto <- numero % cont; se (resto = 0) entao escreva(cont, “ é divisor “); fimse fimpara fimalgoritmo 2) Escreva um algoritmo que leia 200 números inteiros e imprima quantos são pares e quantos são ímpares. algoritmo “par_impar”; inicio var numero, resto : inteiro; cont, cont_par, cont_impar : inteiro; para cont de 1 até 200 faca leia(numero); resto <- numero % 2; se (resto = 0) então cont_par <- cont_par + 1; senão cont_impar <- cont_impar + 1; fimse fimpara fimalgoritmo 3) Escreva um algoritmo que leia um conjunto de 50 fichas, cada uma contendo a altura e o sexo de uma pessoa (1 = masculino e 2 = feminino), e calcule e imprima: • A maior e a menor altura da turma; • A média de altura da mulheres; • A média de altura da turma. algoritmo “ler_fichas”; inicio var altura : real; sexo :inteiro; cont, cont_mulheres : inteiro; maior_altura, menor_altura : real media_altura_mulheres, media_altura_turma : real; tot_altura_mulheres, tot_altura_turma : real; para cont de 1 ate 50 faca leia(sexo); leias(altura); se (cont = 1) então maior_altura <- altura; menor_altura <- altura; senão se (altura > maior_altura) então maior_altura <- altura; fimse se (altura < menor_altura) então menor_altura <- altura; fimse fimse tot_altura_turma <- tot_altura_turma + altura; se (sexo = 2) então tot_altura_mulheres <- tot_altura_mulheres + altura; cont_mulheres <- cont_mulheres + 1; fimse fimpara media_altura_mulheres <- tot_altura_mulheres / cont_mulheres; media_altura_turma <- tot_altura_turma / 50; escreva(menor_altura, maior_altura, media_altura_mulheres, media_altura_turma); fimalgoritmo 4) Em um prédio, com 50 moradores, há três elevadores denominados A, B e C. Para otimizar o sistema de controle dos elevadores, foi realizado um levantamento no qual cada usuário respondia: • O elevador que utilizava com mais freqüência; • O período que utilizava o elevador, entre: o “M’ – matutino; o “V’ – vespertino; o “N’ – noturno; Construa um algoritmo que calcule e imprima: • qual é o elevador mais freqüentado e em que período se concentra o maior fluxo; • qual o período mais utilizado. algoritmo “elevadores”; inicio var cont : inteiro; ElevA_Mat, ElevA_Ves, ElevA_Not, totElevA : inteiro ElevB_Mat, ElevB_Ves, ElevB_Not, totElevB : inteiro; ElevC_Mat, ElevC_Ves, ElevC _Not, totElevC : inteiro; totMat, totVes, totNot : inteiro; elevador, periodo : caractere; para cont de 1 ate 50 faca leia(elevador); leia(periodo); se (elevador = “A’) e (período “M’) então ElevA_Mat <- ElevA_Mat + 1; senão se (elevador = “A’) e (período “V’) então ElevA_Ves <- ElevA_Ves + 1; senão se (elevador = “A’) e (período “N’) então ElevA_Not <- ElevA_Not + 1; senão se (elevador = “B’) e (período “M’) então ElevB_Mat <- ElevB_Mat + 1; senão se (elevador = “B’) e (período “V’) então ElevB_Ves <- ElevB_Ves + 1; senão se (elevador = “B’) e (período “N’) então ElevB_Not <- ElevB_Not + 1; senão se (elevador = “C’) e (período “M’) então ElevC_Mat <- ElevC_Mat + 1; senão se (elevador = “C’) e (período “V’) então ElevC_Ves <- ElevC_Ves + 1; senão se (elevador = “C’) e (período “N’) então ElevC_Not <- ElevC_Not + 1; fimse fimse fimse fimse fimse fimse fimse fimse fimse fimpara totElevA <- ElevA_Mat + ElevA_Ves + ElevA_Not totElevB <- ElevB_Mat + ElevB_Ves + ElevB_Not totElevB <- ElevC_Mat + ElevC_Ves + ElevC_Not se (totElevA > totElevB) e (totElevA > totElevC) entao se (ElevA_Mat > ElevA_Ves) e (ElevA_Mat > ElevA_Not) entao escreva(“O mais utilizado foi o A no período Matutino’); senão se (ElevA_Ves > ElevA_Mat) e (ElevA_Ves > ElevA_Not) entao escreva(“O mais utilizado foi o A no período Vespertino’); senão escreva(“O mais utilizado foi o A no período Noturno’); fimse fimse senao se (totElevB > totElevA) e (totElevB > totElevC) entao se (ElevB_Mat > ElevB_Ves) e (ElevB_Mat > ElevB_Not) entao escreva(“O mais utilizado foi o B no período Matutino’); senão se (ElevB_Ves > ElevB_Mat) e (ElevB_Ves > ElevB_Not) entao escreva(“O mais utilizado foi o B no período Vespertino’); senão escreva(“O mais utilizado foi o B no período Noturno’); fimse fimse senao se (ElevC_Mat > ElevC_Ves) e (ElevC_Mat > ElevC_Not) entao escreva(“O mais utilizado foi o C no período Matutino’); senão se (ElevC_Ves > ElevC_Mat) e (ElevC_Ves > ElevC_Not) entao escreva(“O mais utilizado foi o C no período Vespertino’); senão escreva(“O mais utilizado foi o C no período Noturno’); fimse fimse fimse fimse totMat <- ElevA_Mat + ElevB_Mat + ElevC_Mat totVes <- ElevA_Ves + ElevB_Ves + ElevC_Ves totNot <- ElevA_Not + ElevB_Not + ElevC_Not se (totMat > totVes) e (totMat > totNot) então escreva(“O período mais utilizado foi o Matutino’); senão se (totVes > totMat) e (totVes > totNot) então escreva(“O período mais utilizado foi o Vespertino’); senão escreva(“O período mais utilizado foi o Vespertino’); fimse fimse fimalgoritmo