Ir para conteúdo

POWERED BY:

Arquivado

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

Mestre Eneck

programa em pascal que leia um vetor de 20 posições inteiras em ordem

Recommended Posts

1) Faça um programa em pascal que leia um vetor de 20 posições inteiras e o coloquem em ordem crescente, utilizando a seguinte estratégia de ordenação(método da seleção direta)

• Selecione o elemento do vetor de 20 posições que apresenta o menor valor;

• Troque este elemento pelo primeiro

• Repita estas operações, envolvendo agora apenas os 19 elementos restantes (selecionando o de menor valor com a segunda posição), depois os 18 elementos (trocando o de menor valor com a terceira posição), depois os 17 , os 16 e assim por diante, ate restar um único elemento, o maior deles.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oba, amigo quitZAUMMM

Você e quem sempre me ajuda e o melhor me da uma luz rapaz, espero poder conta com a sua ajuda mais uma vez.

Agradeço de já e sábio guru da informática,

 

Um abraço,

Eneas Gomes De Lima

 

P.S: Desculpepor te deserespeitado as regra do forum não foi de propositofoi por presa.

 

Peço desculpa a o moderadore todososparticipante do forum

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então camarada, não tenho conhecimentos em Pascal, por isso peço que você desenvolva, e na lógica eu posso te ajudar bastante.

+ você precisa expressar onde tem dúvidas tendeu? n é por mal, q eu falo "beleza e?" e sim pq qro ver seus esforços ;D

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oii, =)

 

estou com dúvida no mesmo exercicio ..

eu sei fazê-lo assim:

 

Program exercicio1;  
 
 var
 a: array [1..20] of integer;
 x,y,aux:integer;
 
 Begin
  for x:=1 to 20 do
  begin
    writeln('Digite o ',x,'º número do vetor:');
    readln(a[x]);
  end;
  for x:=1 to 19 do
   begin
     for y:=x+1 to 20 do
      begin
        if (a[x]>a[y]) then
        begin
          aux:=a[x];
          a[x]:=a[y];
          a[y]:=aux;
        end;
      end;
   end;
   
     writeln('O maior Número Digitado foi:',a[20]);
   
  
 End.

 

o resulto final, vai ser o pedido pelo exercicio

mas a lógica nao =\

e eu precisaria da lógica ..

 

se alguem puder me ajudar, me informando o que devo mudar =)

 

desde já Obrigada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você precisa ter uma variavel para guardar a menor posição, feito isso é soh trocar os valores como você está fazendo..

 

[]s

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.