sexta-feira, 22 de julho de 2011

Ex. 09 -

Elaborar um algoritmo que lê um conjunto de 30 valores e os coloca em 2 vetores conforme forem
pares ou ímpares. O tamanho do vetor é de 5 posições. Se algum vetor estiver cheio, escrevê-lo.
Terminada a leitura escrever o conteúdo dos dois vetores. Cada vetor pode ser preenchido tantas vezes quantas for necessário.

Entendendo...

O entendimento está nos comentários... muito sono *--*

Uma possível Solução:

algoritmo "Vetores"

// Autor : Eduardo V. de Souza
// Data : 27/07/2011

//Declarando variáveis
// dois vetores com cino posições cada
var v:vetor[1..5]de inteiro
vr:vetor[1..5]de inteiro
// uma variavel de leitura, uma variável para o laço, dois contadores
i,x,cont_p,cont_i:inteiro

inicio

//como precisamos ler 30 valores um laça com 30 incrementos
para i de 1 ate 30 faca
//lendo a variavel x
leia(x)
//Validando se o valor lido é par ou ímpar.
se(x%2)=0 entao
//se sim o contares de par é incrementado
cont_p<-cont_p+1
// e o vetor de numeros pares recebe na posição do contador o valor lido
v[cont_p]<-x
//se o contador chegar a 5 então o vetor é exibido.
se cont_p=5 entao
escreval("Vetor par")
para i de 1 ate 5 faca
escreval(v[i])
fimpara
escreval
//zerando o contador para ser usado novamente
cont_p<-0
fimse
senao
//caso não seja par ele é impar XD
//e o mesmo é feito para os números ímpares
cont_i<-cont_i+1
vr[cont_i]<-x
se cont_i=5 entao
escreval("Vertor Impar")
para i de 1 ate 5 faca
escreval(vr[i])
fimpara
cont_i<-0
escreval
fimse
fimse
fimpara

//como o exercicio pede que é pra mostrar
// o que restou de cada vetor e se restou
// iniciamo um laço até o contador de cada vetor
//e exibimos cada elemento que restou.
escreval("Vetor par")
para i de 1 ate cont_p faca
escreval(v[i])
fimpara
escreval("vetor impar")
para i de 1 ate cont_i faca
escreval(vr[i])
fimpara
fimalgoritmo

Em Execução:

5 comentários:

  1. Sensacional amigo! Muito obrigado pela resolução e pelo passo-a-passo!

    ResponderExcluir
  2. opa cara eu fiz o mesmo em C
    caso queira ver

    #include
    #include
    /*
    Elaborar um algoritmo que lê um conjunto de 30 valores e os coloca em 2 vetores conforme forem pares ou ímpares.O tamanho do vetor é de 5 posições.
    Se algum vetor estiver cheio, escrevê-lo.
    Terminada a leitura escrever o conteúdo dos dois vetores. Cada vetor pode ser preenchido tantas vezes quantas for necessário.
    */
    int main()
    {
    int cont, num, cont_par, cont_impar, cont_aux;
    int vet[30], vet_par[5], vet_impar[5];
    cont_par = 0;
    cont_impar = 0;
    num = 0;
    cont = 0;
    cont_aux = 0;
    for (cont = 0; cont < 30; cont++ )
    {
    printf("Numero: ");
    scanf("%d", &vet[cont] );
    system("cls");
    if (vet[cont] %2 == 0 ) // verifica se é par ou impar
    {
    vet_par[cont_par] = vet[cont]; // coloca em um vetor o numero digitado
    cont_par++; // incrementa se o contador se o numero for par
    if (cont_par == 5 ) // verifica se o contador é igual a cinco para mostrar
    {
    printf("Numeros Pares em Bloco de 5\n");
    for(cont_aux = 0; cont_aux < 5; cont_aux++ )
    {
    printf("%d\n", vet_par[cont_aux]); // mostra os numeros pares usando um contador auxiliar
    }
    cont_par = 0; // zera o contador para poder contar ateh cinco dnovo * os pares
    }
    }
    else
    {
    vet_impar[cont_impar] = vet[cont]; // coloca em um vetor o numero digitado
    cont_impar++; // incrementa o contador
    if (cont_impar == 5 ) // verifica se o contador é igual a cinco para mostrar
    {
    printf("Numeros Impares em Bloco de 5\n");
    for(cont_aux = 0; cont_aux < 5; cont_aux++ )
    {
    printf("%d\n", vet_impar[cont_aux]); // mostra os numeres impares usando um contador auxiliar
    }
    cont_impar = 0; // zera o contador para mostrar ateh cinco dnovo * os impares
    }
    }
    }
    printf("Os Numeros Digitados Foram: \n");
    for (cont = 0; cont < 30; cont++)
    {
    printf("%d - ", vet[cont]); // mostra os numeros digitados
    }
    /*Lteko®2011 .... lteko@hotmail.com \o */
    return 0;
    }

    http://pastebin.com/v963cmjd

    ResponderExcluir
    Respostas
    1. Muito bom, embora eu não seja muito fã de C hehehe parabens ^^

      Excluir
  3. Acho que entrei no blog tarde demais pra ver, bom valeu mesmo =)

    ResponderExcluir