Ir ao conteúdo
  • Cadastre-se

VisualG Menor e maior valor de um vetor


Posts recomendados

Boa noite pessoal, sou novo aqui, to tentando criar um código, mas não ta dando certo.

 

Não to conseguindo pegar o menor e maior valores dos vetores 

 

Questão 3) - Construa um algoritmo que leia  (usando estrutura de repetição) um conjunto de dados de alunos contendo Nota e Faltas de 10 alunos, calcule e escreva:
- a  maior nota da turma;
- a  menor nota da turma;
- e a média das notas dos aprovados (considera-se aprovado quem obteve nota >= 6 e faltas <= 25);
- o percentual de reprovados por faltas e o percentual de reprovados por nota.

algoritmo "semnome"
// Função :
// Autor :
// Data : 23/05/2018
// Seção de Declarações
var
vet : vetor [1..10] de inteiro
vet1 :vetor [1..10] de real
cont, menor  : inteiro
inicio
      para cont de 1 ate 10 faca
           escreval (" digite a nota")
           leia (vet1[cont])

                escreval (" digite as faltas")
                leia (vet[cont])
      fimpara
      para cont de 1 ate 10 faca
      se (menor > (vet1[cont]) então
      menor <- (vet1[cont])
      fimpara
      para cont de 1 ate 10 faca
      se (menor > (vet1[cont]) então
      menor <- menor
      fimpara
fimalgoritmo

 

  • Amei 1
Link para o comentário
Compartilhar em outros sites

@a2050781     para postar seu código é melhor usar o botão   <>  que está lá na barra de ferramentas da janela de responder pois senão seu código fica faltando alguns caracteres  ,  para ver qual é o menor você precisa pegar o primeiro número que está armazenado no vetor e dentro do loop você faz a comparação com os outros números , do jeito que você fez , e o maior também a mesma coisa ,  então seu código com algumas modificações ficaria assim  :

algoritmo "maior e menor"
// Função :
// Autor :
// Data : 23/05/2018
// Seção de Declarações
var
vet : vetor [1..10] de inteiro
vet1 :vetor [1..10] de real
cont : inteiro
 menor,maior : real
inicio
  para cont de 1 ate 10 faca
    escreva (" digite a nota ")
    leia (vet1[cont])

    //escreva (" digite as faltas ")
    //leia (vet[cont])
  fimpara
  menor:=vet1[1]
  para cont de 2 ate 10 faca
    se (menor > vet1[cont]) ENTÃO
      menor <- (vet1[cont])
    fimse
  fimpara
  maior:=vet1[1]
  para cont de 2 ate 10 faca
    se (maior < vet1[cont]) ENTÃO
      maior := vet1[cont]
    fimse
  fimpara
  escreval("A Maior Nota é ",maior)
  escreval("A Menor Nota é ",menor)
fimalgoritmo

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
1 hora atrás, Niê disse:

Por que é de 2 ate 10 e não de 1 ate 10?


Por que o primeiro já está como sendo o maior e menor. Ai basta comparar do 2º em diante.

 

adicionado 28 minutos depois

@a2050781, sobre essa estrutura do menor e menor, editei um código a partir do @devair1010.

 

algoritmo "maior e menor"
var
   notas :vetor [1..10] de inteiro
   faltas:vetor [1..10] de inteiro
   menor :inteiro
   maior :inteiro
   media :real
   cont  :inteiro

inicio
escreval("Digite as notas e faltas dos alunos")
para cont de 1 ate 10 faca
   escreval()
   escreval("Aluno",cont)
   escreva ("Nota  :")
   leia(notas[cont])
   //escreva ("Faltas:")
   //leia(faltas[cont])
fimPara

//inicializa o menor e maior
menor:=notas[1]
maior:=notas[1]

para cont de 2 ate 10 faca
   se (menor > notas[cont]) ENTÃO
      menor <- (notas[cont])
   senao
      se (maior < notas[cont]) ENTÃO
         maior := notas[cont]
      fimSe
   fimSe
fimPara

escreval("A Maior Nota é ",maior)
escreval("A Menor Nota é ",menor)
fimAlgoritmo
{
   Questão 3) - Construa um algoritmo que leia (usando estrutura de repetição) um
conjunto de dados de alunos contendo Nota e Faltas de 10 alunos, calcule e
escreva:
   - a maior nota da turma;
   - a menor nota da turma;
   - e a média das notas dos aprovados (considera-se aprovado quem obteve nota
     >= 6 e faltas <= 25);
   - o percentual de reprovados por faltas e o percentual de reprovados por
     nota.
}


Qualquer coisa dá uma revisada e usa como base.

Basicamente sugiro:
- uso de nomenclaturas variáveis mais sugestivas;

- a verificação do menor e menor podem ser feitas no mesmo laço de repetição;

- acho melhor evitar ficar solicitando que o usuário faça algo repetidamente, ou seja, "digite... ", "digite... ", "digite... " entende? eu acho que fica cansativo. Pense em outros sistemas do dia dia... meu e-mail não diz "digite seu login", "digite sua senha"... apenas tem "Login" e "senha"... mas é só uma sugestão, vá adaptando ao seu gosto :)



Daí veja o que já está "pronto" e vá dando continuidade... posta o código aqui para analisarmos, e se tiver dúvidas sobre alguma parte é só postar.
 

No aguardo.

 

 

 

 

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...