Engenharia da Computação
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Engenharia da Computação

Fórum de toda Engenharia da Computação da UNIG
 
InícioPortalProcurarÚltimas imagensRegistarEntrar

 

 Programa para ordenar um vetor em C

Ir para baixo 
2 participantes
AutorMensagem
Miqueloti

Miqueloti


Número de Mensagens : 27
Idade : 35
Data de inscrição : 01/03/2008

Programa para ordenar um vetor em C Empty
MensagemAssunto: Programa para ordenar um vetor em C   Programa para ordenar um vetor em C Icon_minitimeSex 30 maio 2008, 1:01 pm

Estou aqui desocupado em meu trabalho, então resolvi tentar fazer um programa de pesquisa binária, o primeiro passo é coletar os dados e ordenar o vetor, o que foi o um problema, pois não sabia como, e depois de bater a cabeça um pouco descobri a solução, então resolvi compartilhar para que outros que assim como eu não entenderam como organizar um vetor, possam compreender como funciona esta troca.

Espero que esteja bem esclarecido, tentei facilitar bem a explicação com os comentários, caso fique alguma duvida perguntem que eu tento explicar melhor, e quando o código do programa de pesquisa binária estiver pronto eu postarei aqui também pra vocês!

Código:

/*Programa em para preencher um vetor de 5 posições, e ordenar em ordem
crescente todos os elementos*/
#include <stdio.h>
#include <conio.h>
int vetnum[5],i,j,aux;/*vetor, contadores, variavel auxiliar p/ troca
de elementos no vetor*/
int main ()
{
    for(i=0;i<5;i++)//coleta de dados
    {
        printf("Digite o valor %d: ",i+1);
        scanf("%d",&vetnum[i]);
    }
    for(i=0;i<5;i++)/*Executa o for abaixo por 5 vezes para que ordene
todo o vetor*/
        for(j=0;j<4;j++)/*Troca a posição x pela posição x+1 até o
x ser o penultimo elemento do vetor para trocar com o ultimo*/
        {
            if(vetnum[j]>vetnum[j+1])/*se a posição atual for maior
que a posição posterior*/
            {
                aux=vetnum[j+1];//auxiliar recebe posição posterior
                vetnum[j+1]=vetnum[j];//P.Posterior recebe P.Atual
                vetnum[j]=aux;//P.Atual
            }
        }
    for(i=0;i<5;i++)//imprime os elementos ordenados para o usuário
    printf("O Valor %d: %d\n",i+1,vetnum[i]);
    getch(); 
}
Ir para o topo Ir para baixo
Zed [ADM-Daniel]
[Administrador]
Zed [ADM-Daniel]


Número de Mensagens : 87
Idade : 35
Data de inscrição : 17/02/2008

Programa para ordenar um vetor em C Empty
MensagemAssunto: Re: Programa para ordenar um vetor em C   Programa para ordenar um vetor em C Icon_minitimeSeg 02 Jun 2008, 11:37 pm

Uia, Miqueloti está treinando bem na programação ;P
Boa, tbm preciso praticar mais em vez de só ser na sala de aula =x
Mas engraçado, fui lendo aqui sua forma de colocar, é um pouco diferente da minha, mas olhei tudo aqui, e acho que daria no mesmo.

Código:
#include <stdio.h>
#include <conio.h>
int vetnum[5],i,j,aux;
int main ()
{
    for(i=0;i<5;i++)
    {
        printf("Digite o valor %d: ",i+1);
        scanf("%d",&/*numero(Caso use o compilador da UNIG apague vetnum[i] e deixe numero)*/vetnum[i]);
    /*vetnum[i]=numero(Caso use o compilador da UNIG essa parte deixa de ser comentário*/
    }
    for(i=0;i<4;i++)
      { 
        for(j=i+1;j<5;j++)
        {
            if(vetnum[i]>vetnum[j])
            {
                aux=vetnum[i];
                vetnum[i]=vetnum[j];
                vetnum[j]=aux;
            }
        }
    printf("O Valor %d: %d\n",i+1,vetnum[i]);
      }
    getch(); 
}
Ir para o topo Ir para baixo
https://unigengcom.forumeiros.com
 
Programa para ordenar um vetor em C
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» Programa 25/03 - Matriz tridimensional
» Programa 11/03
» Vc gota de programa em C++
» Programa 15/04 - Ponteiro

Permissões neste sub-fórumNão podes responder a tópicos
Engenharia da Computação :: Períodos :: 3º Período :: LTPII - Linguagem C-
Ir para: