Ir ao conteúdo
  • Cadastre-se

Ajuda com código simples em C


larafml

Posts recomendados

Fala fala clã! Estou com uma dúvida aqui.
O programa é simples, o usuário entra com um número de pessoas, e logo depois, a idade de cada uma dessas pessoas.

Se for par, essa pessoa é mulher, e vai pro vetor de mulher, se for impar, vai pro vetor de homem.

Ai então os vetores são ordenados.
Minha dúvida está depois disso. Eu preciso então, retornar se todas as mulheres fazer par com um homem mais velho que elas.
Tipo, a Maria de 20, faz par com o Pedro de 21. A Angela de 28, faz par com o Marcio de 33.

Se todas as mulheres fizerem par, eu retorno "sucesso", se uma delas ficou sem par, eu retorno "fracasso".
Sobrar homem não faz diferença.

 

HELP PLEASE.

 

Coloquei um comentário no código de onde minha dúvida está!

#include <stdio.h>#include <stdlib.h>#define limpa_tela system("cls") //limpa tela#define MAX 1000main(){int valor = 0, numT = 0;int i = 0, j = 0, x = 0, y = 0, troca = 0, count = 0, m = 0, l = 0, par = 0, contf = 0;int vetH[MAX];int vetM[MAX];printf("Quantidade de convidados ");scanf("%d", &numT);        for(i=0; i<numT; i++)          {            printf("\nInsira a idade do convidado: ");            scanf("%d", &valor);            if(valor >= 18 || valor <=100)            {            if(valor%2==0){                vetM[m] = valor;                m++;            }            else{                vetH[j] = valor;                j++;              }            }          }          for(x = 0; x < MAX-1; x++){            for(y = 1; y < MAX+1; y++){              if(vetM[x] < vetM[y]){                  troca = vetM[y];                  vetM[y] = vetM[x];                  vetM[y] = troca;              }            }          }          for(x = 0; x < MAX-1; x++){            for(y = 1; y < MAX+1; y++){              if(vetH[x] < vetH[y]){                  troca = vetH[y];                  vetH[y] = vetH[x];                  vetH[y] = troca;              }            }          }//DÚVIDAS COMEÇAM AQUI.        for(l=0;l<numT;l++)              {                for(m=0;m<numT;m++)                {                  if(vetH[j]!=0 && vetM[m]!=0)                    {                       if(vetH[j]>vetM[m])                       {                        par++;                        vetH[j]=0;                        vetM[m]=0;                       }                    }                }              }              if(contf==par)                {                  printf("Sucesso");                }else{                printf("fracasso");                }}
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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!