Форум программистов, компьютерный форум CyberForum.ru

символы и рандом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Динамическое распределение памяти. http://www.cyberforum.ru/cpp-beginners/thread233406.html
#include<stdio.h> #include<stdlib.h> int bespor(int *ptr); void main(void){ int *ptr,kolvo,b=0,i,z=1; scanf("%d",&kolvo);//Сколько элементов в последовательности? kolvo--; if(kolvo>1){
C++ Каким образом организовывать ввод данных для поддержки программной обработка неправильно введенных данных? Каким образом организовывать ввод данных для поддержки программной обработка неправильно введенных данных? никак не вкурю,что бы это могло означать?)) http://www.cyberforum.ru/cpp-beginners/thread233394.html
C++ Если данное четырехзначное число является симметричным, выведите 1
помогите ! В условии одной из задач на этом сайте написано: “Если данное четырехзначное число является симметричным, выведите 1, иначе выведите любое другое целое число”. Для проверки задачи используются заранее подготовленные примеры и правильные ответ на них Школьнику кажется, что он решил эту задачу, но тестирующая система почему-то не принимает его решение. Школьник думает, что это...
C++ симметричное число
пытаюсь определить, является ли 4-х значное число палиндромом. что я здесь не так делаю? #include <iostream> using namespace std; int main() { int a; cin>>a; int rev = 0;
C++ Как работать с окнами? http://www.cyberforum.ru/cpp-beginners/thread233372.html
Здраствуйте, помогите пожалуйсто, не как немогу найти инфу о том как работать с окнами, ни книг на эту тему нечего найти немогу, скиньте хоть какую небудь информацию о том как с этим всем работать (компилятор использую Dev C++)
C++ 3 Теоретических Вопроса 1. Какие спецификации форматов ввода-вывода данных имеют функции scanf() и printf()? Каким образом организовывать ввод данных для поддержки программной обработка неправильно введенных данных? 2. Перенаправление потоков ввода-вывода. Как можно сформировать файл с исходными данными? Потоковые функции для работы с текстовыми файлами fprintf() и fscanf(), их использование для файлового ввода-вывода.... подробнее

Показать сообщение отдельно
x1Mike7x
 Аватар для x1Mike7x
214 / 127 / 6
Регистрация: 06.11.2010
Сообщений: 234
24.01.2011, 18:44     символы и рандом
Консольный покер хочешь написать?)
Вот вывод всех карт на экран:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
struct card
{
    char value, suit;
};
//value {2,3,4,5,6,7,8,9,T,J,Q,K,A}
//suit {3,4,5,6}
  
int main()
{
    struct card deck[52];
    char x, buf[1];
    int i=0, v, s;
    
    for (s=3; s<7; s++)
        for (v=1; v<14; v++)
        {
            x = (v==1) ? ('A') :
                        (v==10) ? ('T') :
                            (v==11) ? ('J') :
                                (v==12) ? ('Q') :
                                    (v==13) ? ('K') :
                                        ('X');
            if (x=='X')
            { 
                itoa(v, buf, 10);
                deck[i].value=buf[0];
            }
            else
                deck[i].value = x;
            deck[i].suit = s;
            i++;
        };
    
    srand((unsigned)time(NULL));
    
    for (i=0; i<52; i++)
        printf("%c%c\n", deck[i].value, deck[i].suit);
    
    system("pause");
    return 0;
}
По второму: Если у тебя будет рандомно перетасована колода, то можно просто на место вытянутой карты помещать последнюю из массива и в следующем рандоме-выборе карт указывать диапазон массива на 1 меньше. То есть:
1) Выбираем карту из массива на 52 карты (i=rand()%52, arr[i]);
2) Если выбранная карта не была последней в массиве, то переставляем последнюю карту на место выбранной;
3) Проводим следующий выбор карты, но у же из массива на 51 элемент (i=rand()%51, arr[i]);
 
Текущее время: 05:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru