1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

10 Rundom Cards Для Игры В Покер

Тема в разделе "Вопросы новичков и не только", создана пользователем Blond, 10 ноя 2012.

Статус темы:
Закрыта.
  1. Blond

    Blond Гость

    Репутация:
    0
    ДОбрый день. подскажите пожалуйста, пытаюсь выбрать из колоды в 52 карты 10 не повторяющихся (но выходит верно только одна) остальные вообще не понимаю как получаются

    Код:
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    struct card{
    int value;
    char suit;
    };
    struct board{
    struct card deck[52];
    };
    struct hend{
    struct card hend[10];
    };
    int main(){
    struct board b;
    struct hend a;
    int i =1;
    int counter = 1;
    int counter2 = 1;
    int counter3 = 1;
    int counter4 = 1;
    int temp;
    for(i=0; i< 52; i++){
    if(i<13){
    b.deck[i].value = counter;
    b.deck[i].suit = 'c';
    counter++;
    }
    else if(i<26){
    b.deck[i].value = counter2;
    b.deck[i].suit = 'd';
    counter2++;
    }
    else if(i<39){
    b.deck[i].value = counter3;
    b.deck[i].suit = 'h';
    counter3++;
    }
    else if(i<52){
    b.deck[i].value = counter4;
    b.deck[i].suit = 's';
    counter4++;
    }
    }
    srand(time(NULL));
    for(i=0; i<10; i++){
    temp = rand()%52+1;
    if(b.deck[temp].value != 0){
    a.hend[i].value = b.deck[temp].value;
    a.hend[i].suit = b.deck[temp].suit;
    b.deck[temp].value = 0;
    b.deck[temp].suit = NULL;
    break;
    }
    }
    for(i=0; i< 10; i++){
    printf("Card Value: %d Suit: %c \n", a.hend[i].value, a.hend[i].suit);
    }
    return 0;
    }
    Спасибо!
     
  2. rrrFer

    rrrFer Гость

    Репутация:
    0
    почините теги кода
     
Статус темы:
Закрыта.

Поделиться этой страницей