Ir ao conteúdo
  • Cadastre-se

Portugol Como fazer com que o meu algoritmo diga quem é o numero maior e o menor


Posts recomendados

Pessoal, minha professora possou o seguinte problema para resolvermos:

Pegue 10 números aleatórios que serão inseridos pelo usuário do programa, e dentre eles identifique o MAIOR, o MENOR e a MEDIA deles.
até o momento o que eu tenho é isso:

 

programa
{    
     inteiro QTD = 0
    inteiro i
    real maior=0.0, menor,num
    funcao inicio()
    {    leia (QTD)
        real notas[100],media
        
        media = 0.0
        para (i=0;i<QTD;i++)
        {
            escreva ("Informe a nota ", i ," : ")
            leia (notas)
            media=media+notas
        
        
        }
        
        media= media/QTD
        escreva (media)
    }
}

 

O MEU PROBLEMA É O SEGUINTE:

com esse código eu não consigo mostrar qual é o maior e o menor numero digitado pelo usuário, e também nem faço ideia de como fazer isso,ja procurei na internet mas sobre portugol não há tanto material em especifico assim,se alguém puder ajudar agradeço,tudo o que preciso é de uma luz doq fazer para mostrar ao usuário qual é o maior e o menor numero.

 

Link para o comentário
Compartilhar em outros sites

  • Moderador

@juliano_araujo Basicamente,  você precisa declarar duas variáveis contendo o vetor no índice zero.

Depois fazer uma comparação deles. Além disso, seu professor pediu 10 números, mas você colocou 100.

 

Ficaria algo como isto:

Variáveis:
real notas[10];

leia (notas[0])
maior <- notas[0]
menor <- notas[0]


para (i = 0; i < 9; i++){
     escreva ("Informe a nota ", i ," : ")             
    leia (notas[i]);
  SE (notas[i] > maior){
       maior = notas[i];
}senão{
   se(notas[i] < menor){
       menor = notas[i];
}
  escreva("Menor: ", menor)
   escreva("Maior: ", maior)

} 

PS: Não copie o código. Não vai funcionar. É somente para dar um norte a você. De como comparar elementos no vetor.

Nem sei se a sintaxe é desta forma. 

 

Link para o comentário
Compartilhar em outros sites

@DiF obrigado, vou seguir esse caminho aqui.

ps. botei 100 porque meus professores sempre testam para números alem dos que ele pediram, sendo assim ja coloco com um limite maior doq o solicitado :)

adicionado 19 minutos depois

@DiF mais uma vez, MUITO OBRIGADO seu norte me salvou mesmo,valeu.....

e caso alguém tenha a mesma duvida ou queira conferir o resultado eis aqui a solução:

 

programa
{    
     inteiro QTD = 0
    inteiro i
    real maior=0.0, menor=999999.9,num
    funcao inicio()
    {    leia (QTD)
        real notas[100],media
        
        
        
        
        media = 0.0
        para (i=0;i<QTD;i++)
        {
            escreva ("Informe a nota ", i ," : ")
            leia (notas)
            media=media+notas
        
            se (notas>maior)
                { maior=notas}
            se (notas<menor)
                { menor=notas}
        
        }
        
        
        media= media/QTD
        escreva ("A média é: " , media, '\n')
        escreva ("maior: " ,maior , '\n' , "menor: ", menor)
    }
}

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...