Ir ao conteúdo

Posts recomendados

Postado

Estou mais uma vez apanhando para fazer este código, e pra variar não acho o erro...

HELP :ahh:


/*Faça um programa que leia 20 números
inteiros e armazene-os num vetor. Após a
realização da leitura, crie dois novos
vetores, armazenando os números pares no
vetor PAR e os números IMPARES no vetor
impar. Escreva os três vetores na tela. Não
permita “buracos’’ entre valores.*/
#include<stdio.h>
#include<stdlib.h>

int main()

{
int i, num[20], par[10], impar[10],x=0,y=0;

printf("Digite 20 numeros inteiros:\n\n");

for (i=0; i<20; i++) //preenchimento do vetor//
scanf("%d",&num);

for (i=0; i<20; i++)
{
if(num[i]%2 == 0)//verificação se o número é par//
{
par[x]=num[i];//Armazenamento dos numeros pares no vetor par//
x++; //incremento do índice do vetor par//
}
else //se o numeto inteiro não é par, é ímpar!//
{
impar[y]=num[i];//Armazenamento dos numeros ímpares no vetor ímpar//
y=++; //incremento do índice do vetor ímpar//
}
}


printf("Numeros pares digitados\n\n"); //impressão do vetor par//

for (i=0; i<x; i++)
printf("\n\n%d",par[i]);

printf("Numeros impares digitados\n\n");//impressão do vetor ímpar//

for (i=0; i<y; i++)
printf("\n\n%d",impar[i]);

system("pause");


}

Postado

O que o debugger disse? Tem que ficar atento. Geralmente ele aponta bem os erros, até a linha.

No code blocks apareceu iss:

24 error: expected expression before ‘;’ token

Ou seja, a linha 24: y=++

tira esse '='. É só y++ mesmo.

E você não está armazenando nas posições certas do vetor 'num': scanf("%d",&num)

Outro detalhe é que voce alocou só um espaço de 10 inteiros pros pares e 10 pros ímpares.

E se eu digitar 11 pares? ou 20 ímpares? Tem que ser 20 pra cada

E poderia economizar um laço for também, colocando o scanf dentro do laço que vai preencher os vetores pares e ímpares:


for (i=0; i<20; i++)
{
scanf("%d",&num[i]);
if(num[i]%2 == 0)//verificação se o número é par
{
par[x]=num[i];//Armazenamento dos numeros pares no vetor par
x++; //incremento do índice do vetor par
}
else //se o numeto inteiro não é par, é ímpar!
{
impar[y]=num[i];//Armazenamento dos numeros ímpares no vetor ímpar
y++; //incremento do índice do vetor ímpar
}
}

Não sei se faz por costume, mas como pode ver, pra comentar uma linha no código, só precisa começar com '//', não precisa terminar com '//' também.

  • 4 anos depois...
Postado

Fiz de um jeito mais simples em que você mesmo pode escolher quantas posições quer colocar:

 

#include<stdio.h>
#include<stdlib.h>

main(){
    int num,
    count=1;
    printf("digite um numero:");
    scanf("%d",&num);
    printf("impares \t pares\n");
    while(count<=num) //enquanto
    {
        if(count%2==1)
        printf(" %d \t", count);
        else
        printf(" \t %d\n", count);
        count++;
    }

}

  • 2 anos depois...
Postado
#include<bits/stdc++.h>
int main()

{
    int i, num[20], par[20], impar[20],x=0,y=0;

    printf("Digite 20 numeros inteiros:\n\n");

    for (i=0; i<20; i++) //preenchimento do vetor//
        scanf("%d",&num[i]);

    for (i=0; i<20; i++)
    {
        if(num[i]%2 == 0)//verificação se o número é par//
        {
            par[x]=num[i];//Armazenamento dos numeros pares no vetor par//
            x++; //incremento do índice do vetor par//
        }
        else //se o numeto inteiro não é par, é ímpar!//
        {
            impar[y]=num[i];//Armazenamento dos numeros ímpares no vetor ímpar//
            y++; //incremento do índice do vetor ímpar//
        }
     }


    printf("\nNumeros pares digitados\n"); //impressão do vetor par//

    for (i=0; i<x; i++)
         printf("%d\n",par[i]);

    printf("\nNumeros impares digitados\n");//impressão do vetor ímpar//

    for (i=0; i<y; i++)
         printf("%d\n",impar[i]);

    system("pause");


}

O seu código, colega. Confere aí se roda...

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!