page1 | page2 | page3 | page5 | page6 | 大富豪カードPG | ロト6シミュレーションPG | メインページに戻る
ルンゲクッタ法 | フーリエ変換 | サイコロ | | | | |

  1. 趣味で大富豪のカードを配るプログラムソースを作ってみました。そのなのとおり配るだけです(笑

  2. // vctime2.cpp : コンソール アプリケーションのエントリ ポイントを定義します。
    //
    
    #include <stdafx.h>
    #include <time.h>
    
    #include <iomanip>
    #include <windows.h>
    #include <conio.h>
    using namespace std;
    
    
    extern void syutu1(int si[]);
    extern void syutu2(int si[]);
    extern void syutu3(int si[]);
    
    extern void syutu4(int si[]);
    
    
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        HANDLE hStdout;
        WORD wAttributes;
        CONSOLE_SCREEN_BUFFER_INFO csbi;
        //構造体です 
        hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
        //hStdoutのコンソールスクリーンバッファ情報をcsbiに取得 
    
        GetConsoleScreenBufferInfo(hStdout, &csbi);
    
        srand((unsigned int)time(NULL));
        const int MAX=10000;
        int i,j,k,l,t=0,temp;
        int kai[MAX],yu[MAX],si[55];
    
        for(k=0;k<=MAX;k++){
            yu[k] = 1;  //yu[k]の初期化
    
            kai[k] = 0; //kai[k]の初期化
        }
        for(k=0;k<=54;k++)
            si[k]=55;   //si[k]の初期化
    
        for(i=0;i<=MAX;i++){
        kai[i]=rand()%54+1;     //nの値を代入
    
    ////////////////////カードを配布//////////////////////////////
        
        for(j=0;j<i+1;j++){
            if(kai[j]!=kai[i])
                yu[i]+=1;
        }
        }
        
    
        l=0;
        i=0;
    
            do{
            if(yu[i]==i){
            si[l]=kai[i];
            l++;
        }
            if(i==MAX)break;
            i++;
        }while(l<54);
    
    
    /////////カードの並びかえ/////////////////////
            for(i=0;i<13;i++){
                for(j=i+1;j<13;j++){
                    if(si[i] > si[j]){
                        temp = si[i];
                        si[i] = si[j];
                        si[j] = temp;
                    }
                }
            }
    
            for(i=13;i<26;i++){
                for(j=i+1;j<26;j++){
                    if(si[i] > si[j]){
                        temp = si[i];
                        si[i] = si[j];
                        si[j] = temp;
                    }
                }
            }
    
            for(i=26;i<40;i++){
                for(j=i+1;j<40;j++){
                    if(si[i] > si[j]){
                        temp = si[i];
                        si[i] = si[j];
                        si[j] = temp;
                    }
                }
            }
    
            for(i=40;i<54;i++){
                for(j=i+1;j<54;j++){
                    if(si[i] > si[j]){
                        temp = si[i];
                        si[i] = si[j];
                        si[j] = temp;
                    }
                }
            }
    
                ////////////出力/////////////
    
            wAttributes = 10;
            SetConsoleTextAttribute(hStdout,wAttributes);
            cout <<"クローバ  ";
            
            wAttributes = 9;
            SetConsoleTextAttribute(hStdout,wAttributes);
            cout <<"スペード  ";
            
            wAttributes = 12;
            SetConsoleTextAttribute(hStdout,wAttributes);
            cout <<"ダイヤ  ";
            
            wAttributes =13 ;
            SetConsoleTextAttribute(hStdout,wAttributes);
            cout <<"ハート"<<"\n\n";
            
            SetConsoleTextAttribute(hStdout, csbi.wAttributes);
            cout << "-----------------1人目-------------------\n";
            syutu1(si);
            SetConsoleTextAttribute(hStdout, csbi.wAttributes);
            cout << "\n-----------------2人目-------------------\n";
            syutu2(si);
            SetConsoleTextAttribute(hStdout, csbi.wAttributes);
            cout << "\n-----------------3人目-------------------\n";
            syutu3(si);
            SetConsoleTextAttribute(hStdout, csbi.wAttributes);
            cout << "\n-----------------4人目-------------------\n";
            syutu4(si);
    
            SetConsoleTextAttribute(hStdout, csbi.wAttributes);
            cout <<endl;
            getch();
    
    
        return 0;           //関数の終了
    
    }
    
    
    // stdafx.cpp : 標準インクルードのみを含むソース ファイルです。
    // daifugo_card.pch は、プリコンパイル済みヘッダーになります。
    //  stdafx.obj にはプリコンパイル済み型情報が含まれます。
    
    #include "stdafx.h"
    #include <iomanip>
    
    #include <iostream>
    #include <windows.h>
    using namespace std;
    
    // TODO: このファイルではなく、STDAFX.H で必要な
    // 追加ヘッダーを参照してください。
    
    
    void syutu1(int si[]){
        HANDLE hStdout;
        WORD wAttributes;
        CONSOLE_SCREEN_BUFFER_INFO csbi;
        //構造体です 
        hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
        //hStdoutのコンソールスクリーンバッファ情報をcsbiに取得 
        GetConsoleScreenBufferInfo(hStdout, &csbi);
        for (int i=0;i<13;i++){
            if(si[i]%4==0&&si[i]!=53&&si[i]!=54){
                wAttributes = 10;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==1&&si[i]!=53&&si[i]!=54){
                wAttributes = 9;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==2&&si[i]!=53&&si[i]!=54){
                wAttributes = 12;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==3&&si[i]!=53&&si[i]!=54){
                wAttributes =13 ;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==53||si[i]==54){
                wAttributes =15;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==1||si[i]==2||si[i]==3||si[i]==4)      cout << "3";
            if(si[i]==5||si[i]==6||si[i]==7||si[i]==8)      cout << "4";
            if(si[i]==9||si[i]==10||si[i]==11||si[i]==12)   cout << "5";
            if(si[i]==13||si[i]==14||si[i]==15||si[i]==16)  cout << "6";
            if(si[i]==17||si[i]==18||si[i]==19||si[i]==20)  cout << "7";
            if(si[i]==21||si[i]==22||si[i]==23||si[i]==24)  cout << "8";
            if(si[i]==25||si[i]==26||si[i]==27||si[i]==28)  cout << "9";
            if(si[i]==29||si[i]==30||si[i]==31||si[i]==32)  cout << "10";
            if(si[i]==33||si[i]==34||si[i]==35||si[i]==36)  cout << "11";
            if(si[i]==37||si[i]==38||si[i]==39||si[i]==40)  cout << "12";
            if(si[i]==41||si[i]==42||si[i]==43||si[i]==44)  cout << "13";
            if(si[i]==45||si[i]==46||si[i]==47||si[i]==48)  cout << "1";
            if(si[i]==49||si[i]==50||si[i]==51||si[i]==52)  cout << "2";
            if(si[i]==53||si[i]==54)                        cout << "jk";
            if(si[i]==55){
                cout <<"error";
            }
            cout <<setw(3);
    
        }
    
    }
    
    
    void syutu2(int si[]){
        HANDLE hStdout;
        WORD wAttributes;
        CONSOLE_SCREEN_BUFFER_INFO csbi;
        //構造体です 
        hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
        //hStdoutのコンソールスクリーンバッファ情報をcsbiに取得 
        GetConsoleScreenBufferInfo(hStdout, &csbi);
        for (int i=13;i<26;i++){
            if(si[i]%4==0&&si[i]!=53&&si[i]!=54){
                wAttributes = 10;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==1&&si[i]!=53&&si[i]!=54){
                wAttributes = 9;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==2&&si[i]!=53&&si[i]!=54){
                wAttributes = 12;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==3&&si[i]!=53&&si[i]!=54){
                wAttributes =13 ;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==53||si[i]==54){
                wAttributes =15;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==1||si[i]==2||si[i]==3||si[i]==4)      cout << "3";
            if(si[i]==5||si[i]==6||si[i]==7||si[i]==8)      cout << "4";
            if(si[i]==9||si[i]==10||si[i]==11||si[i]==12)   cout << "5";
            if(si[i]==13||si[i]==14||si[i]==15||si[i]==16)  cout << "6";
            if(si[i]==17||si[i]==18||si[i]==19||si[i]==20)  cout << "7";
            if(si[i]==21||si[i]==22||si[i]==23||si[i]==24)  cout << "8";
            if(si[i]==25||si[i]==26||si[i]==27||si[i]==28)  cout << "9";
            if(si[i]==29||si[i]==30||si[i]==31||si[i]==32)  cout << "10";
            if(si[i]==33||si[i]==34||si[i]==35||si[i]==36)  cout << "11";
            if(si[i]==37||si[i]==38||si[i]==39||si[i]==40)  cout << "12";
            if(si[i]==41||si[i]==42||si[i]==43||si[i]==44)  cout << "13";
            if(si[i]==45||si[i]==46||si[i]==47||si[i]==48)  cout << "1";
            if(si[i]==49||si[i]==50||si[i]==51||si[i]==52)  cout << "2";
            if(si[i]==53||si[i]==54)                        cout << "jk";
            if(si[i]==55){
                cout <<"error";
            }
            cout <<setw(3);
    
        }
    
    }
    
    
    void syutu3(int si[]){
        HANDLE hStdout;
        WORD wAttributes;
        CONSOLE_SCREEN_BUFFER_INFO csbi;
        //構造体です 
        hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
        //hStdoutのコンソールスクリーンバッファ情報をcsbiに取得 
        GetConsoleScreenBufferInfo(hStdout, &csbi);
        for (int i=26;i<40;i++){
            if(si[i]%4==0&&si[i]!=53&&si[i]!=54){
                wAttributes = 10;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==1&&si[i]!=53&&si[i]!=54){
                wAttributes = 9;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==2&&si[i]!=53&&si[i]!=54){
                wAttributes = 12;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==3&&si[i]!=53&&si[i]!=54){
                wAttributes =13 ;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==53||si[i]==54){
                wAttributes =15;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==1||si[i]==2||si[i]==3||si[i]==4)      cout << "3";
            if(si[i]==5||si[i]==6||si[i]==7||si[i]==8)      cout << "4";
            if(si[i]==9||si[i]==10||si[i]==11||si[i]==12)   cout << "5";
            if(si[i]==13||si[i]==14||si[i]==15||si[i]==16)  cout << "6";
            if(si[i]==17||si[i]==18||si[i]==19||si[i]==20)  cout << "7";
            if(si[i]==21||si[i]==22||si[i]==23||si[i]==24)  cout << "8";
            if(si[i]==25||si[i]==26||si[i]==27||si[i]==28)  cout << "9";
            if(si[i]==29||si[i]==30||si[i]==31||si[i]==32)  cout << "10";
            if(si[i]==33||si[i]==34||si[i]==35||si[i]==36)  cout << "11";
            if(si[i]==37||si[i]==38||si[i]==39||si[i]==40)  cout << "12";
            if(si[i]==41||si[i]==42||si[i]==43||si[i]==44)  cout << "13";
            if(si[i]==45||si[i]==46||si[i]==47||si[i]==48)  cout << "1";
            if(si[i]==49||si[i]==50||si[i]==51||si[i]==52)  cout << "2";
            if(si[i]==53||si[i]==54)                        cout << "jk";
            if(si[i]==55){
                cout <<"error";
            }
            cout <<setw(3);
    
        }
    
    }
    
    
    void syutu4(int si[]){
        HANDLE hStdout;
        WORD wAttributes;
        CONSOLE_SCREEN_BUFFER_INFO csbi;
        //構造体です 
        hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
        //hStdoutのコンソールスクリーンバッファ情報をcsbiに取得 
        GetConsoleScreenBufferInfo(hStdout, &csbi);
        for (int i=40;i<54;i++){
            if(si[i]%4==0&&si[i]!=53&&si[i]!=54){
                wAttributes = 10;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==1&&si[i]!=53&&si[i]!=54){
                wAttributes = 9;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==2&&si[i]!=53&&si[i]!=54){
                wAttributes = 12;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]%4==3&&si[i]!=53&&si[i]!=54){
                wAttributes =13 ;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }
            if(si[i]==53||si[i]==54){
                wAttributes =15;
                SetConsoleTextAttribute(hStdout,wAttributes);
            }if(si[i]==1||si[i]==2||si[i]==3||si[i]==4)     cout << "3";
            if(si[i]==5||si[i]==6||si[i]==7||si[i]==8)      cout << "4";
            if(si[i]==9||si[i]==10||si[i]==11||si[i]==12)   cout << "5";
            if(si[i]==13||si[i]==14||si[i]==15||si[i]==16)  cout << "6";
            if(si[i]==17||si[i]==18||si[i]==19||si[i]==20)  cout << "7";
            if(si[i]==21||si[i]==22||si[i]==23||si[i]==24)  cout << "8";
            if(si[i]==25||si[i]==26||si[i]==27||si[i]==28)  cout << "9";
            if(si[i]==29||si[i]==30||si[i]==31||si[i]==32)  cout << "10";
            if(si[i]==33||si[i]==34||si[i]==35||si[i]==36)  cout << "11";
            if(si[i]==37||si[i]==38||si[i]==39||si[i]==40)  cout << "12";
            if(si[i]==41||si[i]==42||si[i]==43||si[i]==44)  cout << "13";
            if(si[i]==45||si[i]==46||si[i]==47||si[i]==48)  cout << "1";
            if(si[i]==49||si[i]==50||si[i]==51||si[i]==52)  cout << "2";
            if(si[i]==53||si[i]==54)                        cout << "jk";
            if(si[i]==55){
                cout <<"error";
            }
            
            
            cout <<setw(3);
    
        }
    
    }