Ir ao conteúdo
  • Cadastre-se

Se o valor é impar vai para um vetor se par para outro. como fazer isso??


Posts recomendados

não estou conseguindo resolver o seguinte problema:
Escreva um programa C contendo dois vetores: numerosMenores e numerosMaiores. O usuário deve informar quantos valores desejar. Valores menores que 30 devem ficar no vetor  numerosMenores.

Meu código ficou assim:

#include <stdio.h>
int main(){
    int num, i, tamvet1, tamvet2;
    printf("Informe o tamanho do vetor \'numerosMenores\': ");
    scanf("%d", &tamvet1);
    printf("Informe o tamanho do vetor \'numerosMaiores\': ");
    scanf("%d", &tamvet2);
    int numerosMenores[tamvet1], numerosMaiores[tamvet2];
    for(i=0; i < (tamvet1+tamvet2); i++){
        printf("Digite um numero:");
        scanf("%d", &num);
        if(num < 30){
            numerosMenores = num;
        }
        else{
            numerosMaiores = num;
        }
    }
    for(i=0; i<tamvet1; i++){
        printf("Numeros menores do que 30: [%d] %d\n", i, numerosMenores);
    }
    for(i=0; i<tamvet2; i++){
        printf("Numeros maiores do que 30: [%d] %d\n", i, numerosMaiores);
    }
}

Obrigado!

Link para o comentário
Compartilhar em outros sites

você precisa de 2 contadores. Quando o numero por exemplo for menor que 30 e você inserir ele no vetor numerosMenores, você precisa incrementar o contador de numeros menores, algo tipo:

if(num < 30){
            numerosMenores[contadorMenores] = num;
            contadorMenores++;
        }
        else{
            numerosMaiores[contadorMaiores] = num;
            contadorMaiores++;
        }

if(num < 30){
    numerosMenores[contadorMenores] = num;
	contadorMenores++;
}else{
    numerosMaiores[contadorMaiores] = num;
    contadorMaiores++;
}


E para adicionar algo que deixe sei código mais seguro supondo que ambos contadores não devem passar de 30

if(num < 30){
    if (contadorMenores<30){
      numerosMenores[contadorMenores] = num;
      contadorMenores++;
    }
}else{
  	if (contadorMaiores<30){
    	numerosMaiores[contadorMaiores] = num;
    	contadorMaiores++;
    }
}

 

Link para o comentário
Compartilhar em outros sites

não deu certo não @vangodp

adicionado 4 minutos depois

Aquele código estava faltando uns pedaços, esse abaixo esta do jeito que escrevi.

 

#include <stdio.h>
int main(){
	int num, i, y, tamvet1, tamvet2;
	printf("Informe o tamanho do vetor \'numerosMenores\': ");
	scanf("%d", &tamvet1);
	printf("Informe o tamanho do vetor \'numerosMaiores\': ");
	scanf("%d", &tamvet2);
	int numerosMenores[tamvet1], numerosMaiores[tamvet2];
	for(i=0; i < (tamvet1+tamvet2); i++){
		printf("Digite um numero:");
		scanf("%d", &num);
		if(num < 30){
			numerosMenores[i] = num;
		}
		else{
			numerosMaiores[y] = num;
			y++;
		}
	}
	for(i=0; i<tamvet1; i++){
		printf("Numeros menores do que 30: [%d] %d\n", i, numerosMenores[i]);
	}
	for(y=0; y<tamvet2; y++){
		printf("Numeros maiores do que 30: [%d] %d\n", y, numerosMaiores[y]);
	}
}

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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