terça-feira, 2 de agosto de 2016

Faça um programa que tenha como entrada 30 valores e colocá-los em 2 vetores conforme forem pares ou ímpares. Cada vetor possui 5 posições. Se algum vetor estiver cheio, imprimir o seu conteúdo. Terminada a leitura escrever o conteúdo dos dois vetores. Cada vetor pode ser preenchido tantas vezes quantas forem necessárias.

Faça um programa que tenha como entrada 30 valores e  colocá-los em 2 vetores
conforme forem pares ou ímpares. Cada vetor possui 5 posições. Se algum vetor estiver
cheio, imprimir o seu conteúdo. Terminada a leitura escrever o conteúdo dos dois vetores.
Cada vetor pode ser preenchido tantas vezes quantas forem necessárias.

#include <stdio.h>
#define NE 30 /*qtde de números*/
#define TAM 5 /*tamanho dos vetores*/

int main(){
   int vi[TAM],/*armazena os números ímpares*/
       vp[TAM],/*aramazena os números pares*/
       pos_i=-1,/*última posição preenchida do vetor de números ímpares**/
       pos_p=-1,/*última posição preenchida do vetor de números pares*/
       cont,k,/*contadores*/
       numero;

   for(cont=1;cont<=NE;cont++ )    {
      printf("Forneca um número inteiro");
      scanf("%d",&numero);
      /*verificando se o número é par ou ímpar*/
      if(numero%2==0){
         /*o número é par*/
         pos_p++;
         vp[pos_p]=numero;
         /*verificando se o vetor está cheio*/
         if(pos_p==TAM-1){
            printf("\nNúmeros Pares\n");
            for(k=0;k<TAM;k++)
               printf("\n%d",vp[k]);
            pos_p=-1;
         }
      }
      else{
         /*o número é ímpar*/
         pos_i++;
         vi[pos_i]=numero;
         /*verificando se o vetor está cheio*/
         if(pos_i==TAM-1){
            printf("\nNúmeros Ímpares\n");
            for(k=0;k<TAM;k++)
               printf("\n%d",vi[k]);
            pos_i=-1;
         }

      }
   }

   if(pos_p>0){/*verificando se tem elementos no vetor de números pares que não foram impressos*/
      printf("\n Números Pares\n");
      for(k=0;k<=pos_p;k++)
        printf("\n%d",vp[k]);
   }
   if(pos_i>0){/*verificando se tem elementos no vetor de números ímpares que não foram impressos*/
     printf("\n Números Ímpares\n");
     for(k=0;k<=pos_p;k++)
       printf("\n%d",vi[k]);
   }
   return 0;
}

Nenhum comentário:

Postar um comentário