Se alguem puder ajudar agradeço...
Uma turma tem 50 alunos. Faça um algoritmo que:
Segue mais ou menos o que eu consegui até agora e que não atende a questão:
inicio
// Seção de Comandos
cont <- 0
repita
Escreval ("Informe o nome e idade do, ", cont, "º aluno: ")
Leia (nome)
Leia (idade)
Se (idade = 18) entao
Escreval ("Aluno possui 18 anos")
Senao
Se (idade > 20) entao
maiorvinte <- idade
Fimse
Fimse
cont <- cont +1
ate cont = 5
Espero ter ajudado.
var
nome:vetor [1..50] de caracter
idade:vetor [1..50] de inteiro
i:inteiro
inicio
Para i de 1 ate 50 faca
Escreva("Digite seu nome: ")
Leia(nome[i])
Escreva("Digite sua idade: ")
Leia(idade[i])
limpatela
fimpara
Para i de 1 ate 50 faca
Se (idade[i] = 18) entao
Escreval("O aluno ",nome[i]," tem 18 anos")
fimse
Se (idade[i] > 20) entao
Escreval("O aluno ",nome[i]," tem mais de 20 anos")
fimse
fimpara
fimalgoritmo
Se alguem puder ajudar agradeço...
Uma turma tem 50 alunos. Faça um algoritmo que:
leia para cada aluno o seu nome e idade;
escreva os nomes dos alunos que tem 18 anos;
escreva a quantidade de alunos que tem idade acima de 20 anos
Segue mais ou menos o que eu consegui até agora e que não atende a questão:
inicio
// Seção de Comandos
cont <- 0
repita
Escreval ("Informe o nome e idade do, ", cont, "º aluno: ")
Leia (nome)
Leia (idade)
Se (idade = 18) entao
Escreval ("Aluno possui 18 anos")
Senao
Se (idade > 20) entao
maiorvinte <- idade
Fimse
Fimse
cont <- cont +1
ate cont = 5
#portugol#portugues-estruturado#Exercicio-REPITA-ATE;
Para a resolução deste problema temos varias opções, dentre elas as estruturas de dados onde poderíamos criar uma estrutura chamada Aluno cujos atributos seriam nome e idade, este é um pouco mais complexo e exige certo conhecimento de estrutura de dados.
Nesta solução foi utilizado o conceito de vetores que é mais simples, definimos vetores, um para os nomes e outro para as idades ambos com o mesmo tamanho e fazemos a leitura dos dados em seqüência adicionando para cada posição o nome e a idade em seu respectivo vetor. Neste momento já podemos ir contando a quantidade de alunos com idade maior que 20 anos, assim evitamos escrever mais um laço de repetição. Logo após executamos um laço de repetição para imprimir os nomes de alunos com 18 anos e em seguida imprimimos a quantidade de alunos com idade superior a 20 anos.
Algoritmo "Sala de Aula"
Var
// Seção de Declarações das variáveis
nomes: vetor [1..50] de caractere; //Vetor de 50 posições para os nomes
idades: vetor [1..50] de inteiro; //Vetor de 50 posições para as idades
contador_mais_vinte, contador : inteiro //Contatdor de idades maior que 20 e contador de passos
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
contador <- 1 //Inicializo contador
repita //Inicio o laço de repetição para captura de dados
Escreval("Informe o nome e idade do ", contador, "° aluno: ")
Leia(nomes[contador]) //Pego o nome e coloco no vetor de nomes
Leia(idades[contador]) //Pego a idade e coloco no vetor de idades
se idades[contador] > 20 entao //Conto se for maior de 20 anos
contador_mais_vinte <- contador_mais_vinte + 1
fimse
contador <- contador + 1 //Incremento contador
ate contador = 50 //Condição de parada do repita ate
//Inicializo contador novamente para nova operação
contador <- 1
Escreval("::::: Alunos com 18 anos :::::")
repita //Inicio um laço para exibir os nomes de alunos com 18 anos.
se idades[contador] = 18 entao//Se tiver 18 anos escrevo nome na tela
Escreval("Nome: ", nomes[contador])
fimse
contador <- contador + 1
ate contador = 50
Escreval("::::::::::::::::::::::::::::::")//Somente como separador
//Escrevo a quantidade de alunos com mais de 20 anos
Escreval("Total de alunos com mais de 20 anos: ", contador_mais_vinte)
Fimalgoritmo
Nesta solução foi utilizado o conceito de vetores que é mais simples, definimos vetores, um para os nomes e outro para as idades ambos com o mesmo tamanho e fazemos a leitura dos dados em seqüência adicionando para cada posição o nome e a idade em seu respectivo vetor. Neste momento já podemos ir contando a quantidade de alunos com idade maior que 20 anos, assim evitamos escrever mais um laço de repetição. Logo após executamos um laço de repetição para imprimir os nomes de alunos com 18 anos e em seguida imprimimos a quantidade de alunos com idade superior a 20 anos.
Algoritmo "Sala de Aula"
Var
// Seção de Declarações das variáveis
nomes: vetor [1..50] de caractere; //Vetor de 50 posições para os nomes
idades: vetor [1..50] de inteiro; //Vetor de 50 posições para as idades
contador_mais_vinte, contador : inteiro //Contatdor de idades maior que 20 e contador de passos
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
contador <- 1 //Inicializo contador
repita //Inicio o laço de repetição para captura de dados
Escreval("Informe o nome e idade do ", contador, "° aluno: ")
Leia(nomes[contador]) //Pego o nome e coloco no vetor de nomes
Leia(idades[contador]) //Pego a idade e coloco no vetor de idades
se idades[contador] > 20 entao //Conto se for maior de 20 anos
contador_mais_vinte <- contador_mais_vinte + 1
fimse
contador <- contador + 1 //Incremento contador
ate contador = 50 //Condição de parada do repita ate
//Inicializo contador novamente para nova operação
contador <- 1
Escreval("::::: Alunos com 18 anos :::::")
repita //Inicio um laço para exibir os nomes de alunos com 18 anos.
se idades[contador] = 18 entao//Se tiver 18 anos escrevo nome na tela
Escreval("Nome: ", nomes[contador])
fimse
contador <- contador + 1
ate contador = 50
Escreval("::::::::::::::::::::::::::::::")//Somente como separador
//Escrevo a quantidade de alunos com mais de 20 anos
Escreval("Total de alunos com mais de 20 anos: ", contador_mais_vinte)
Fimalgoritmo
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar