#include <cstdlib>
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
#include <queue>
#include <string>
#include <stack>
#include <ctime>
using namespace std;
int money=100;
int t=0;
int tt=-1;
int v;
int d;
void borrow()
{
if(tt!=-1)
{
cout<<"你现在不能借钱"<<endl;
return;
}
cout<<"你要借多少钱?"<<endl;
cin>>v;
if (d==1||d==2)
{
if (v>1000) cout<<"你不能借这么多钱!"<<endl,cout<<"你要借多少钱?"<<endl,cin>>v;
if (v<=1000) money+=v,cout<<"10天以后你要还"<<2*v<<"美元"<<endl;
return;
}
else
{
if (v>100) cout<<"你不能借这么多钱!"<<endl,cout<<"你要借多少钱?"<<endl,cin>>v;
if (v<=100) money+=v,cout<<"10天以后你要还"<<2*v<<"美元"<<endl;
return;
}
}
bool pay()
{
cout<<"你现在要还 "<<2*v<<endl;
money-=2*v;
tt=-1;
v=0;
if(money<=0) return false;
else return true;
}
int main(int argc, char *argv[])
{
cout<<"欢迎来到彩票游戏!"<<endl<<endl<<"温馨提示:在游戏内请勿使用小数、负数、英文字母、特殊字符(游戏中另说明除外),"<<endl<<"否则后果自负。"<<endl<<endl;
cout<<"请选择难度(输入序号即可):"<<endl<<"1:入门"<<" "<<"2:简单"<<" "<<"3:普通"<<" "<<"4:中等"<<" "<<"5:困难"<<endl;
cin>>d;
if (d==1) cout<<"已选择难度:入门"<<endl<<endl;
if (d==2) cout<<"已选择难度:简单"<<endl<<endl;
if (d==3) cout<<"已选择难度:普通"<<endl<<endl;
if (d==4) cout<<"已选择难度:中等"<<endl<<endl;
if (d==5) cout<<"已选择难度:困难"<<endl<<endl;
while(1)
{
if (d<1) cout<<"没有这个选项"<<endl<<"请选择难度(输入序号即可):"<<endl<<"1:入门"<<" "<<"2:简单"<<" "<<"3:普通"<<" "<<"4:中等"<<" "<<"5:困难"<<endl,cin>>d;
if (d>5) cout<<"没有这个选项"<<endl<<"请选择难度(输入序号即可):"<<endl<<"1:入门"<<" "<<"2:简单"<<" "<<"3:普通"<<" "<<"4:中等"<<" "<<"5:困难"<<endl,cin>>d;
if (d==1 || d==2 || d==3 || d==4 || d==5) break;
}
bool flag=true;
srand(time(0));
int a[10000];
int n,p;
char c[4];
if (d==1)
{
cout<<"每张彩票 购入价为1美元,出售价为5美元,有五个奖项"<<endl<<"小奖:10美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
cout<<"你有100美元,当你赚了超过10,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
cout<<"你可能想借钱(最多1,000美元),如果你想,按0。"<<endl<<"请记住,当你借了十天以后。你必须偿还两倍,"<<endl;
cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
}
if (d==2)
{
cout<<"每张彩票 购入价为2美元,出售价为3美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
cout<<"你有100美元,当你赚了超过10,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
cout<<"你可能想借钱(最多1,000美元),如果你想,请按0。"<<endl<<"请记住,当你借了十天以后。你必须偿还两倍,"<<endl;
cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
}
if (d==3)
{
cout<<"每张彩票 售价2美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
cout<<"你有100美元,当你赚了超过10,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
cout<<"你可能想借钱(最多100美元),如果你想,请按0。"<<endl<<"请记住,当你借了十天以后。你必须偿还两倍,"<<endl;
cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
}
if (d==4)
{
cout<<"每张彩票 售价3美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:10,000美元"<<endl;
cout<<"你有100美元,当你赚了超过100,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你破产了。"<<endl;
cout<<"你可能想借钱(最多100美元),如果你想,请按0。"<<endl<<"请记住,当你借了七天以后。你必须偿还两倍,"<<endl;
cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
}
if (d==5)
{
cout<<"每张彩票 购入价为5美元,出售价为2美元,有五个奖项"<<endl<<"小奖:5美元"<<endl<<"中奖:20美元"<<endl<<"大奖:100美元"<<endl<<"巨额奖金:1,000美元"<<endl<<"杰克壶:5,000美元"<<endl;
cout<<"你有100美元,当你赚了超过100,000美元,你就发财了。"<<endl<<"但如果你失去了所有的钱,你就破产了。"<<endl;
cout<<"你可能想借钱(最多100美元),如果你想,请按0。"<<endl<<"请记住,当你借了五天以后。你必须偿还两倍,"<<endl;
cout<<"你想买彩票还是卖彩票?(buy/sell)"<<endl;
}
cin>>c;
if(c[0]=='b'||c[0]=='B')
{
while(money>0)
{
if (d==1||d==2||d==3) if(money>=10000)
{
cout<<"你发财了! "<<endl;
cout<<"你花了 "<<t<<"天"<<endl;
system("pause");
return 0;
}
if (d==4||d==5) if(money>=100000)
{
cout<<"你发财了! "<<endl;
cout<<"你花了 "<<t<<"天"<<endl;
system("pause");
return 0;
}
t++;
cout<<"你要买几张票?"<<" "<<"你有$"<<money<<endl;
cin>>n;
if(n==0)
{
if (d=4)
{
borrow();
tt=t+7;
}
if (d=5)
{
borrow();
tt=t+5;
}
else
{
borrow();
tt=t+10;
}
}
if(t==tt)
{
flag=pay();
}
if(t==tt-1) cout<<"[警告]你必须在明天还钱!"<<endl;
if(flag==false)
{
cout<<"你不能偿还你借的钱!"<<endl;
cout<<"你破产了。"<<endl;
cout<<"你生存了"<<t<<"天。"<<endl;
system("pause");
return 0;
}
flag=true;
if(n<0)
{
cout<<"因为你违反规则,所以系统强制停止了你的游戏"<<endl;
system("pause");
}
if (d==1) money=money-n;
if (d==2||d==3) money=money-n*2;
if (d==4) money=money-n*3;
if (d==5) money=money-n*5;
if(money<0)
{
cout<<"你破产了。"<<endl;
cout<<"你生存了"<<t<<"天"<<endl;
system("pause");
return 0;
}
for(int i=0; i<n; i++)
{
p=rand()%12000;
if(p==0)
{
int q=0;
q=rand()%4;
if(q==1)
{
cout<<"你获得了杰克壶!"<<endl;
if (d==5) money+=5000;
else money+=10000;
}
}
else if(p>=1&&p<=8)
{
int g=0;
g=rand()%2;
if(g==0)
{
cout<<"你获得了巨额奖金! "<<endl;
money+=1000;
}
}
else if(p>=9&&p<=99)
{
cout<<"你获得了大奖!"<<endl;
money+=100;
}
else if((p>=100&&p<=399)||(p>1500&&p<=1600))
{
cout<<"你获得了中间奖!"<<endl;
money+=20;
}
else if(p>=400&&p<=1500)
{
cout<<"你获得了小奖!"<<endl;
if (d==1) money+=10;
else money+=5;
}
}
if(money<=0)
{
cout<<"你破产了。"<<endl;
cout<<"你生存了"<<t<<"天。"<<endl;
system("pause");
return 0;
}
}
}
if(c[0]=='s'||c[0]=='S')
{
if (d==1)
{
cout<<"你有$"<<money<<endl;
cout<<"你必须付25美元买一个商店。 "<<endl;
cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
money-=25;
}
if (d==2)
{
cout<<"你有$"<<money<<endl;
cout<<"你必须付35美元买一个商店。 "<<endl;
cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
money-=35;
}
if (d==3||d==4)
{
cout<<"你有$"<<money<<endl;
cout<<"你必须付50美元买一个商店。 "<<endl;
cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
money-=50;
}
if (d==5)
{
cout<<"你有$"<<money<<endl;
cout<<"你必须付60美元买一个商店。 "<<endl;
cout<<"你只能卖同样数量的票作为你的钱。 "<<endl;
money-=60;
}
cout<<"你有$"<<money<<endl;
while(money>0)
{
if (d==1||d==2||d==3) if(money>=10000)
if (d==4||d==5) if(money>=100000)
{
cout<<"你发财了!"<<endl;
cout<<"你花了"<<t<<"天。"<<endl;
system("pause");
return 0;
}
t++;
cout<<"你要卖几张票? "<<" "<<"你有$"<<money<<endl;
cin>>n;
if(n==0)
{
borrow();
tt=t+10;
}
if(t==tt) bool flag=pay();
if(flag==false)
{
cout<<"你不能偿还你借的钱。"<<endl;
cout<<"你破产了!"<<endl;
cout<<"你生存了"<<t<<" 天。"<<endl;
system("pause");
return 0;
}
if(n<0 || n>money)
{
cout<<"注意"<<endl;
cout<<"你破产了!"<<endl;
cout<<"你生存了"<<t<<" 天"<<endl;
system("pause");
return 0;
}
if (d=1) money=money+n*5;
if (d=2) money=money+n*3;
else money=money+n*2;
if(money<0)
{
cout<<"你破产了!"<<endl;
cout<<"你生存了"<<t<<" 天"<<endl;
system("pause");
return 0;
}
for(int i=0; i<n; i++)
{
p=rand()%12000;
if(p==0)
{
int y;
y=rand()%4;
if(y==1)
{
cout<<"你失去了杰克壶!"<<endl;
if (d==5) money-=5000;
else money-=10000;
}
}
else if(p>=1&&p<=8)
{
cout<<"你失去了巨额奖金!"<<endl;
money-=1000;
}
else if(p>=15&&p<=50)
{
cout<<"你失去了大奖!"<<endl;
money-=100;
}
else if(p>=61&&p<=360)
{
cout<<"你失去了中奖!"<<endl;
money-=20;
}
else if(p>=401&&p<=1500)
{
cout<<"你失去了小奖!"<<endl;
money-=5;
}
}
}
}
if(money<=0)
{
cout<<"你破产了。"<<endl;
cout<<"你生存了"<<t<<"天。"<<endl;
system("pause");
return 0;
}
}

c++小游戏:洛谷彩票的更多相关文章

  1. P4554 小明的游戏 (洛谷) 双端队列BFS

    最近没有更新博客,全是因为英语,英语太难了QWQ 洛谷春令营的作业我也不会(我是弱鸡),随机跳了2个题,难度不高,还是讲讲吧,学学新算法也好(可以拿来水博客) 第一题就是这个小明的游戏 小明最近喜欢玩 ...

  2. NOIP2012 Day1 T2国王游戏 洛谷P1080

    第一篇博客啊…… 由于我太弱了,还要去补不全的知识点准备参加人生第一次NOIp,所以第一篇博客就简短一点好了(偷懒就直说吧……) 洛谷P1080传送门 题意概括: 有N对数ai和bi,以及两个数a0和 ...

  3. BZOJ3065 带插入区间K小值 || 洛谷P4278

    这是一道让我崩溃的题...... 然鹅洛谷上时限被改然后只有20分......好像所有人都被卡了(雾) 由于替罪羊树不是依靠旋转操作而是依靠暴力重构的方式维护树的平衡,所以我们可以考虑使用替罪羊树套区 ...

  4. AC日记——欧几里得的游戏 洛谷 P1290

    题目描述 欧几里德的两个后代Stan和Ollie正在玩一种数字游戏,这个游戏是他们的祖先欧几里德发明的.给定两个正整数M和N,从Stan开始,从其中较大的一个数,减去较小的数的正整数倍,当然,得到的数 ...

  5. 矩阵取数游戏洛谷p1005

    题目描述 帅帅经常跟同学玩一个矩阵取数游戏:对于一个给定的n*m的矩阵,矩阵中的每个元素aij均为非负整数.游戏规则如下: 1.每次取数时须从每行各取走一个元素,共n个.m次后取完矩阵所有元素: 2. ...

  6. (基础 输入方法 栈)P1427 小鱼的数字游戏 洛谷

    题目描述 小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字(长度不一定,以0结束,最多不超过100个,数字不超过2^32-1),记住了然后反着念出来(表示结束的数字0就不要念出来了).这对小鱼的 ...

  7. AC日记——[ZJOI2015]幻想乡战略游戏 洛谷 P3345

    [ZJOI2015]幻想乡战略游戏 思路: 树剖暴力转移: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 1 ...

  8. AC日记——矩阵取数游戏 洛谷 P1005

    矩阵取数游戏 思路: dp+高精: 代码: #include <bits/stdc++.h> using namespace std; #define ll long long struc ...

  9. AC日记——国王游戏 洛谷 P1080

    国王游戏 思路: 贪心+高精: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 1005 struct Dat ...

随机推荐

  1. phpstudy+phpstorm+debug

    文:phpstudy+phpstorm+debug 一.配置前说明: 1.phpStudy集成了XDebug扩展,所以不用单独下载XDebug. 2.打开XDebug扩展:其它选项菜单 > PH ...

  2. Bigtable:结构化数据的分布式存储系统

    Bigtable最初是谷歌设计用来存储大规模结构化数据的分布式系统,其可以在数以千计的商用服务器上存储高达PB级别的数据量.开源社区根据Bigtable的设计思路开发了HBase.其优势在于提供了高效 ...

  3. C# ACCESS 修改表记录提示"UPDATE 语句语法错"问题

    错误的sql 语句如下: sqlStr =  "update tb_userInfo set passWord='" + pw + "' where userName=' ...

  4. 转载 《我用 TypeScript 语言的七个月》

    快速使用Romanysoft LAB的技术实现 HTML 开发Mac OS App,并销售到苹果应用商店中.   <HTML开发Mac OS App 视频教程> 土豆网同步更新:http: ...

  5. Qt:解析命令行(使用QCommandLineOption和QCommandLineParser)

    Qt从5.2版开始提供了两个类QCommandLineOption和QCommandLineParser来解析应用的命令行参数. 一.命令行写法命令行:"-abc" 在QComma ...

  6. RtlAdjustPrivilege进程提权,权限ID对照表

    SeCreateTokenPrivilege            0x2 SeAssignPrimaryTokenPrivilege     0x3 SeLockMemoryPrivilege    ...

  7. qtextedit中的光标问题(通过调用repaint去掉Focus的阴影)

    [问题]两个textedit,取名为view0,view1.实现view0输入固定的字符个数后,用setFocus切换聚焦到view1,但是切换完了之后view0还会保留光标残影,出现两个文本框中都有 ...

  8. JS基本类型特性总结

    本文代码测试环境: win7 32位,chrome 版本如下: 一,JS基本数据类型:Undefined, Null, Boolean, Number, String, Object六种. 1,Und ...

  9. 18 HTML标签以及属性全

    基本结构标签: <HTML>,表示该文件为HTML文件 <HEAD>,包含文件的标题,使用的脚本,样式定义等 <TITLE>---</TITLE>,包含 ...

  10. 高并发 Nginx+Lua OpenResty系列(5)——Lua开发库Redis

    Redis客户端 lua-resty-redis是为基于cosocket API的ngx_lua提供的Lua redis客户端,通过它可以完成Redis的操作.默认安装OpenResty时已经自带了该 ...