// 21_2.cpp : コンソール アプリケーション用のエントリ ポイントの定義
//
#include "stdafx.h"
#include "time.h"
#include <string>
//#include <sstream>
#include <iostream>
using namespace std;
string int2str(int num);
string PopUpBall(string inputStr,int index);
bool checkBall(string strBall);
string inputRedballs[6];
int main(int argc, char* argv[])
{
int redBall;
int blueBall;
int tNumber;
int tNumber2;
int ballCount=33;
int flag[33];
//std::stringstream stream;
//std::string strTemp;
string balls[33];
string blueballs[16];
//string inputRedballs[6];
string inputBlueball;
string inputWord;
//input
for(int t1=0;t1<6;t1++)
{
cout << "Input your redball "<< t1+1 << endl;
cin >> inputWord;
inputRedballs[t1] = inputWord;
}
cout << "Input your blueball "<<endl;
cin >> inputBlueball;
//flag Init
for (int m=0;m<33;m++)
{
flag[m]=0;
}
//setup redBalls
for(int j=0;j<33;j++)
{
tNumber=j+1;
balls[j]=int2str(tNumber);
}
//setup blueBalls
for(int n=0;n<16;n++)
{
tNumber2=n+1;
blueballs[n]=int2str(tNumber2);
}
//generate redball
cout <<"The redballs are :"<<endl;
srand((unsigned)time(NULL));
for(int t=0;t<6;t++)
{
do
{
redBall=rand()%ballCount;
}while(flag[redBall]==1 || checkBall(balls[redBall]));
//release a blue ball
flag[redBall]=1;
cout << balls[redBall] <<endl;
}
//generate blueball
do
{
blueBall=rand()%16;
}while(blueballs[blueBall] == inputBlueball);
cout <<"The Blueball is :"<< blueballs[blueBall] <<endl;
/*for(int e=0;e<33;e++)
{
cout << balls[e] <<endl;
}*/
/*
//Test Popupball;
string tStr="012345678";
cout<<PopUpBall(tStr,8)<<endl;
*/
return 0;
}
//number convert to string
string int2str(int num)
{
if ( num == 0 )
{
return "0";
}
string str="";
//将num的????予t
int t = num>0 ? num : -1*num;
while (t)
{
str = (char)(t%10+48)+str;
t /= 10;
}
if ( num < 0 )
{
str = "-" + str;
}
return str;
}
//popup a ball
string PopUpBall(string inputStr,int index)
{
string headStr;
string trailStr;
if(index == 0)
{
return inputStr.substr(1);
}
else if(index == (inputStr.size()-1))
{
return inputStr.substr(0,inputStr.size()-1);
}
else if(index > 0 && index <inputStr.size()-1)
{
headStr = inputStr.substr(0,index);
trailStr = inputStr.substr(index+1,inputStr.size()-index);
return headStr+trailStr;
}
return "";
}
//Checkball
bool checkBall(string strBall)
{
for(int t2=0;t2<6;t2++)
{
if(strBall == inputRedballs[t2])
return true;
}
return false;
}