#include <bits/stdc++.h>
#include <time.h>
using namespace std;
bool win = false;
int main() {
srand((unsigned int)time(NULL));
double ans,m = (rand() % 50 + 150) / 10.0,d = 0.0,u,en,mm;
cout << "赌场,有"<< m << "元\n";
while (m < 789113.00) {
if (d >= 1111111.00 || m <= -1111111.00) {
cout << "\n你贷款太多了!你被打4了!";
return 0;
}
if (d >= 917813.00 || m <= -917813.00) {
cout << "\n你贷款太多了!你被赶了出去!";
return 0;
}
mm = 0.00;
if (m <= 0.00) {
cout << "\n是否贷款?(1,yes;2,no):";
cin >> ans;
if (ans == 1.00) {
cout << "需要多少?\n";
cin >> mm;
if (mm > 1000.00) {
cout << "最多贷款1000!" << endl;
continue;
}
d += mm;
m += mm;
} else if (ans == 2.00) {
cout << "\n掉" << endl;
return 0;
} else {
cout << "输入错误,请重新选择!" << endl;
continue;
}
}
cout << "\n赌多少:";
cin >> u;
if (u > m + 1e-8) {
cout << "不够钱" << endl;
continue;
}
en = rand() % 5;
win = (en == 0 || en == 1);
mm = 0.00;
if (win) {
m -= u;
if (u <= 15.00) {
mm += 2 * u;
} else if (u <= 50.00) {
mm += 2 * u + 20.00;
} else if (u <= 150.00) {
mm += 3 * u;
} else {
mm += 4 * u;
}
cout << "\n你赢了,获得" << fixed << setprecision(2) << mm << "元!";
m += mm;
if (d > 1e-8) {
d *= 1.1;
cout << "\n你现在贷款" << fixed << setprecision(2) << d << "元!";
}
} else {
m -= u;
cout << "\n你输了,";
if (d > 1e-8) {
if (d <= 15000.00) d *= 1.1;
else if (d <= 150000.00) d *= 1.2;
else d *= 1.5;
cout << "你现在贷款" << fixed << setprecision(2) << d << "元!";
}
}
if (d > 1e-8 && m > 5.0) {
if (m > d + 1e-8) {
cout << "\n自动还款" << fixed << setprecision(2) << d << "元";
m -= d;
d = 0.00;
}
cout << "\n现在有" << fixed << setprecision(2) << m << "元";
if (d > 1e-8) cout << "\n贷款" << fixed << setprecision(2) << d << "元";
} else {
cout << "\n你现在有" << fixed << setprecision(2) << m << "元";
}
}
cout << "\n你赢了,你的存款:" << fixed << setprecision(2) << m << "元";
return 0;
}