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

Моделирование тасования карт в колоде - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Графы http://www.cyberforum.ru/cpp-beginners/thread591460.html
Всем привет, помогите реализовать графы, к примеру чтоб были какие то пункты населенные и расстояния между ними.
C++ перегрузка функции << и >> //include <stdio.h> //include <iostream.h> //include <fstream.h> //include <string.h> char group= “\0”; char otchet= “Print.txt”; struct anketa /* Объявление структуры нового типа (anketa), */ { int num; int n; /* описание полей (элементов) структуры */ char Fam; int dd,mm,yyyy; char pol; http://www.cyberforum.ru/cpp-beginners/thread591459.html
C++ Библиотека времени выполнения Microsoft Visual Studio C обнаружила неустранимую ошибку
При компилирование Debug все работает отлично. Если компилирую Release то, компилируется нормально, но когда запускаю выдает ошибку. "Библиотека времени выполнения Microsoft Visual Studio C обнаружила неустранимую ошибку в AStar.exe. Для отладки нажмите кнопку "Прервать", для завершения нажмите кнопку "Продолжить"." Компилятор MS VS 2008
C++ Работа с массивом.Обработка текстов
Задача: Определить порядковые номера, считая от начала текста, определенных символов, которые задаются в исходных данных, заменить пробелами все такие символы, имеющие нечетные номера. Проблема: Работает правильно, но считывает только по одному символу (букве). Как сделать чтобы программа производила работу с словами? #include <stdio.h> #include <conio.h> #include <math.h> #include...
C++ Дан файл, каждая запись которого содержит тройки чисел http://www.cyberforum.ru/cpp-beginners/thread591455.html
Добрый день. Помогите пожалуйста с прогой: Дан файл, каждая запись которого содержит тройки чисел, соответствующих координатам центра и радиусу окружности. Построить на экране все окружности по данным, содержащимся в файле. Очень прошу!
C++ Найти все трехзначные простые числа. Определить функцию позволяющую распознавать простые числа Найти все трехзначные простые числа. Определить функцию позволяющую распознавать простые числа. Простые числа это когда они делятся только на себя и на единицу Пожалуйста помогите решить не получается она неправильно считает #include <iostream.h> #include <stdio.h> #include <conio.h> using namespace std; int fun(int n,int m); main () {int s,n,m; s=fun(n,m); подробнее

Показать сообщение отдельно
Pozitiv
0 / 0 / 0
Регистрация: 11.04.2012
Сообщений: 10
30.05.2012, 16:43     Моделирование тасования карт в колоде
Помогите мне пожалуйста додумать программу,завтра надо срочно сдать
Задание:Составить программу, моделирующую тасование карт в колоде. Принять количество карт равным 52. После тасования раздается 5 карт. Требуется определить, находится ли на руках две запрошенные карты.

програмка работает,только она не запрашивает две карты,помогите пожалуйста

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
#include <conio.h>
#include <iostream>
#include <time.h>
#include <string>
#include <stdlib.h>
using namespace std;
 
typedef struct {
int value; // znacheniye karti // 2 = 2; 13 - korol; 14 - tuz
int mast; // mast karti
} KOLODA;
 
int GetRand(int min, int max)
{
return (double)rand()/(RAND_MAX+1)*((max+1)-min)+min;
}
 
string sopost(int value,int mast)
{
string str = "";
switch (value)
{
case 11:
str+="J";
break;
case 12:
str+="Q";
break;
case 13:
str+="K";
break;
case 14:
str+="A";
break;
default:
char *temp = new char[10];
itoa(value,temp,10); // ??????????? int ? char*
str+=temp;
break;
 
}
switch (mast)
{
case 0:
str+=" chervi";
break;
case 1:
str+=" bubni";
break;
case 2:
str+=" piki";
break;
case 3:
str+=" kresti";
break;
}
return str;
}
 
int ret_int_mast(string mast)
{
if (mast=="chervi")
return 0;
else if (mast=="bubni")
return 1;
else if (mast=="piki")
return 2;
else if (mast=="kresti")
return 3;
else return 99; // 99 - ??? ??????
}
 
int ret_int_value(string value)
{
if (value=="J")
return 11;
else if (value=="Q")
return 12;
else if (value=="K")
return 13;
else if (value=="A")
return 14;
else if (value=="2"||value=="3"||value=="4"||value=="5"||value=="6"||value=="7"||value=="8"||value=="9"||value=="10")
return atoi(value.c_str()); // ?? char* ? int
else return 99; // 99 - ??? ??????
}
 
int main()
{
srand((unsigned)time( NULL )); // chtobi rabotat s rand()
KOLODA *kol = new KOLODA[52];
int y = 0;
for (int i=2;i<15;i++) // i - znacheniye karti
for (int j=0;j<4;j++) // j - mast karti
{
KOLODA kk;
kk.value = i;
kk.mast = j;
kol[y] = kk;
y++;
}
 
for (int i=0;i<52;i++) // ?????????????
swap(kol[i],kol[GetRand(0,51)]); // ?????? ??????? ??????? ?? ?????????
 
KOLODA *gamer_1 = new KOLODA[5];
int end_elem = 51;
for (int i=0;i<5;i++)
{
int u;
u = GetRand(0,end_elem); // vibirayem indeks sluchainoi karti is kolodi
gamer_1[i] = kol[u]; // dayem ee pervomu igroku
kol[u].value = -1; // izvlekayem ee iz kolodi (stavim znacheniye karti =-1)
KOLODA temp = kol[end_elem]; // menyaem izvlechennujy kartu s samoy posledney v kolode
kol[end_elem] = kol[u];
kol[u] = temp;
end_elem--; // kolichestvo kart v kolode stalo na 1 menshe
}
cout<<"Na rukah: "<<endl;
for (int i=0;i<5;i++)
cout<<sopost(gamer_1[i].value,gamer_1[i].mast)<<endl;
cout<<endl;
 
cout<<"Ukazite 2 karti:"<<endl;
string mast1 = "";
string val1 = "";
cout<<"First: ";
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru