Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #16839

Re: card-counting program for blackjack

Path csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!border3.nntp.dca.giganews.com!Xl.tags.giganews.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local2.nntp.dca.giganews.com!nntp.earthlink.com!news.earthlink.com.POSTED!not-for-mail
NNTP-Posting-Date Tue, 07 Feb 2012 09:32:24 -0600
Message-ID <4F314405.6A9F@mindspring.com> (permalink)
Date Tue, 07 Feb 2012 10:32:21 -0500
From pete <pfiland@mindspring.com>
Reply-To pfiland@mindspring.com
Organization PF
X-Mailer Mozilla 3.04Gold (WinNT; I)
MIME-Version 1.0
Newsgroups comp.lang.c
Subject Re: card-counting program for blackjack
References <18e43b14-0c7a-41bf-84a8-dc27f0e199f2@c6g2000vbk.googlegroups.com>
Content-Type text/plain; charset=us-ascii
Content-Transfer-Encoding 7bit
Lines 114
X-Usenet-Provider http://www.giganews.com
NNTP-Posting-Host 4.154.218.149
X-Trace sv3-EP9AYtNVU/YCL9LxnNDl+wenyeC54fnoif37zsWWqBLiaMK64hho5x7R1t41OsZygn3FVKGzsUkTGcv!TnH22ylC9kJAV1XdWh112p1q0n/MQs2t/nAivhb/WE28Jr373zYR6jr0YprWiCvSKlmfTmHkazTY!Vj5f5ceh+fk=
X-Abuse-and-DMCA-Info Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info Otherwise we will be unable to process your complaint properly
X-Postfilter 1.3.40
X-Original-Bytes 4133
Xref x330-a1.tempe.blueboxinc.net comp.lang.c:16839

Show key headers only | View raw


luser- -droog wrote:
> 
> Sir, is that a keyboard in your sleeve?
> 
> 692(1)03:51 PM:~ 0> cat bj.c && echo --------- && make bj && bj
> #include <ctype.h>
> #include <stdio.h>
> #include <string.h>
> 
> enum { cards = 13, suits = 4, decks = 4 };
> int count[cards];
> int total;
> char symbols[] = "234567890jqka";
> 
> void reset() {
>     int i;
>     total = 0;
>     for (i=0; i < cards; i++)
>         total += count[i] = suits * decks;
> }
> 
> void sub(char c) {
>     if(c=='s')
>         reset();
>     else {
>         char *p = strchr(symbols, tolower(c));
>         if (p == NULL) return;
>         --count[ p - symbols ];
>         --total;
>     }
> }
> 
> void show() {
>     int i;
>     for (i=0; i < cards; i++) printf("  %c ", toupper(symbols[i]));
>     puts("");
>     for (i=0; i < cards; i++) printf("%3d ", count[i]);
>     printf(" 10s:%d ", count[8]+count[9]+count[10]+count[11]);
>     printf("  Total:%d", total);
>     puts("");
>     for (i=0; i < cards; i++) printf("%3d ", (count[i]*100)/total);
>     printf(" 10s:%d ", ((count[8]+count[9]+count[10]+count[11])*100)/
> total);
>     puts("");
> }
> 
> char buf[99];
> 
> void readline() {
>     fgets(buf,99,stdin);
> }
> 
> void doline() {
>     int i = 0;
>     while(buf[i]){
>         if (!isspace(buf[i]))
>             sub(buf[i]);
>         ++i;
>     }
> }
> 
> int main() {
>     reset();
>     while(1) {
>         show();
>         readline();
>         doline();
>     }
>     return 0;
> }
> 
> ---------
> cc -g -Wall    bj.c   -o bj
>   2   3   4   5   6   7   8   9   0   J   Q   K   A
>  16  16  16  16  16  16  16  16  16  16  16  16  16  10s:64   Total:
> 208
>   7   7   7   7   7   7   7   7   7   7   7   7   7  10s:30

This point is where the output stops on my machine.
Either that, 
or this is the point where the program runs too slowly 
for me to continue waiting for more output.


> 460ak
>   2   3   4   5   6   7   8   9   0   J   Q   K   A
>  16  16  15  16  15  16  16  16  15  16  16  15  15  10s:62   Total:
> 203
>   7   7   7   7   7   7   7   7   7   7   7   7   7  10s:30
> 3 9 q kaj
>   2   3   4   5   6   7   8   9   0   J   Q   K   A
>  16  15  15  16  15  16  16  15  15  15  15  14  14  10s:59   Total:
> 197
>   8   7   7   8   7   8   8   7   7   7   7   7   7  10s:29
> 2 4q 48a
>   2   3   4   5   6   7   8   9   0   J   Q   K   A
>  15  15  13  16  15  16  15  15  15  15  14  14  13  10s:58   Total:
> 191
>   7   7   6   8   7   8   7   7   7   7   7   7   6  10s:30
> 2 4 4 8 0 a q
>   2   3   4   5   6   7   8   9   0   J   Q   K   A
>  14  15  11  16  15  16  14  15  14  15  13  14  12  10s:56   Total:
> 184
>   7   8   5   8   8   8   7   8   7   8   7   7   6  10s:30
> 4 4 8 ak
>   2   3   4   5   6   7   8   9   0   J   Q   K   A
>  14  15   9  16  15  16  13  15  14  15  13  13  11  10s:55   Total:
> 179
>   7   8   5   8   8   8   7   8   7   8   7   7   6  10s:30
> ^C
> 693(1)03:52 PM:~ 130>

-- 
pete

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

card-counting program for blackjack luser- -droog <mijoryx@yahoo.com> - 2012-02-05 13:56 -0800
  Re: card-counting program for blackjack pete <pfiland@mindspring.com> - 2012-02-07 10:32 -0500
    Re: card-counting program for blackjack pete <pfiland@mindspring.com> - 2012-02-07 10:35 -0500
      Re: card-counting program for blackjack luser- -droog <mijoryx@yahoo.com> - 2012-02-07 22:59 -0800

csiph-web