Ir ao conteúdo
  • Cadastre-se

Como faço pra distribuir as cartas? ja preenchi e embaralhei. deem uma olhada.


Posts recomendados

Tenho que distribuir 5 cartas para 2 jogadores. Ja fiz a função de preencher e embaralha, mas n sei o jeito de distribuir as cartas. Có

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
int preenche(void);
int embaralha(void);
char naipe[] = {'C', 'O', 'P', 'E', '\0'};
char carta[] = {'A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', '\0'};
 
int main(){
 puts("Baralho :");
 preenche();
 embaralha();
 puts("\n");
 system("pause");
 return 0;
}
 
int preenche(void){
  int i;
  int j;
  for (i = 0; i < strlen(naipe); i++)
    {
        for (j = 0; j < strlen(carta); j++)
                printf("%c %c", naipe[i], carta[j]); // -> só p/ ver quais cartas estão sendo criadas.
        printf("\n");
    }
  return 0;
}
 
int embaralha(void){
  int i,j,k,l;
  int aux;
  printf("Baralho Embaralhado:\n");
   for (i = 0; i < strlen(naipe); i++){
        for (j = 0; j < strlen(carta); j++)
           aux = carta[j];
           carta[j] = carta[i];
           carta[i] = aux;
   }
    for(k=0; k < 52;k++){
    strcat(carta,naipe);
    printf("%c",carta[k]);
    }
    puts("\n");
  return 0;
}

digo abaixo.

Link para o comentário
Compartilhar em outros sites

Você deveria utilizar uma função aleatória, como rand(), para embaralhar as cartas, trocando as posições de cada par de cartas sorteadas n * log n vezes.

Para distribuir as cartas, uma vez que embaralhadas, basta pegar do inicio do vetor. Também pode sortear as cartas a serem distribuídas.

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