Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

suzy

de novo:(

Mensagens Recomendadas

suzy    0
suzy

//Desenvolva uma função que receba um tabela de inteiros positivos e o seu tamanho e
//verifique quantos dos elementos do tabela são pares e quantos são impares.

#include<stdio.h>
# define TAM 5

void funcao(int tam, int *p, int *imp)
    {
    int i;
    for(i=0;i<tam;i++) //vai percorrer o meu vector
       {
       if(*p[i]/2==0)
          
           *p=*p+1;
          
       else
           *q=*q+1;
       }
main()
{
int a[TAM],i,*p,*q,al=1;
   
     for(i=0;i<TAM;i++);
       {
       printf(" introduza o valor %d ",al);
       scanf("%d",&a[i]);
       al++;
       }

printf(" %d %d\n",*p,*q);
fflush(stdin);
getchar();
}

sei que tou a fazer mtos erros,mas nao sei aonde  :) :) :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :thumbsup: :thumbsup:

tenho dificuldade em enteder em colocar aqui ->funcao(TAM,a,&imp);para comunicar com a função ajuda, please  :-[

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
rgcaldas    0
rgcaldas

Aqui

    for(i=0;i<TAM;i++) //vai percorrer o meu vector 
{
if(*p[i]/2==0) // devia de ser if(*p[i]%2==0)  -- modulo % em vez de divisão /
     *p=*p+1;
else
      *q=*q+1;
}

Aqui

void funcao(int tam, int *p, int *imp)

em vez de imp deve ser q

antes do ultimo printf inicializas os ponteiros e chamas a função


*p=0;
*q=0;

funcao(TAM,&p,&q);

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
suzy    0
suzy

#include<stdio.h>
# define TAM 5

void funcao(int tam, int *p, int *q)
    {
    int i;
    for(i=0;i<tam;i++) //vai percorrer o meu vector
       {
       if(*(p[i]%2))==0)
          {
           *p=*p+1;
          }
       else
           *q=*q+1;
       }
main()
{
int p[TAM],i,*p,*q;;

     for(i=0;i<TAM;i++);
       {
       printf(" introduza o valor %d ");
       scanf("%d",&p[i]);
     
      }
*p=0;
*q=0;
funcao(TAM,&p,&q);
printf(" %d %d\n",*p,*q);
fflush(stdin);
getchar();
}

mesmo assim nao corre :)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
shumy    17
shumy

Não seria mais simples:

int pares(int* vect,int tam)
{
  int i,count=0;
  
  for(i=0;i<tam;i++)
if(vect[i]%2 == 0) count++;
  
  return count;
}

Os impares=total-pares

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
_deXter    0
_deXter

suzy independentemente de seguires ou não a sugestão do shumy, continua a faltar-te uma } a fechar a função "funcao". Seria assim:

void funcao(int tam, int *p, int *q)
    {
    int i;
    for(i=0;i<tam;i++) //vai percorrer o meu vector
       {
       if(*(p[i]%2))==0)
          {
           *p=*p+1;
          }
       else
           *q=*q+1;
       }
    }

Não verifiquei o resto do código. :)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade