Help me to rewrite

Hi im tryint to rewrite program into program using <string> but i cant figure out how.
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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
using namespace std;

int rand_0toN1(int n);
void draw_a_card();
int select_next_available(int n);

bool card_drawn[52];
int cards_remaining = 52;

char *suits[4] = {"hearts", "diamonds", "spades", "clubs"};
char *ranks[13] = {"ace", "two", "three", "four", "five", "six", "seven",
                    "eight", "nine", "ten", "jack", "queen", "king"};

int main (){
int n, i;

srand(time(NULL));

while(1) {
cout << "Enter no. of cards to draw ";
cout <<"(0 to exit): ";
cin >> n;
if(n==0)
break;
for(i=1; i<=n; i++)
draw_a_card();
}
return 0;
}

void draw_a_card()
{
if (cards_remaining == 0)
{
cout <<"Reshuffling." << endl;
cards_remaining = 52;
for (int i=0 ; i<52; i++)
card_drawn[i] = false;
}

int r;
int s;
int card, n;
n = rand_0toN1(cards_remaining--);
card = select_next_available(n);
r = card % 13;
s = card /13;
cout << ranks[r] << " of " << suits[s] << endl;
}

int select_next_available(int n)
{
int i = -1;
n++;

while (n-- > 0)
{
i++;
while (card_drawn[i])
i++;
}
card_drawn[i] = true;
return i;
}

int rand_0toN1(int n)
{
return rand () % n;
}
Have you tried replacing char* with std::string ?
hamsterman wrote:
Have you tried replacing char* with std::string ?
Intrexa wrote:
hamsterman wrote:
Have you tried replacing char* with std::string ?

oh. lolz. it worked haha. im sutch a fool. oh well got to keep learning.
Lol, is this code from c++ without fear?
yes :D. But since englsih isnt my native tongue, i need hel to understand few thigns, but 99% i cna understad myself.
Topic archived. No new replies allowed.