最近做了个数学计算模拟器,还有使用记录
目录
YRGAME.h
必须要安装这个!!!!!
不安装会报错!!!!!!
这是我做的拓展库
安装教程参考这篇:
c++镇国之争游戏(带存档,无bug)_m0_64036070的博客-CSDN博客
使用界面
使用记录
还有算式和步骤。。。步骤都是从在读6年级学生的手里抢的。。。
原理
代码一共就88行,还要啥自行车呢?
但是,不得不说,这效果是真还行
讲一下原理:
看我用红色圈起来的部分,举个例子,这个数是一个变量,num
这个数第一次是1,第二次是2,每次都要+1
所以就是num++;
但这个num是需要顺延的,所以建一个文件保存num,用的时候就num++;
fstream file_inin;
file_inin.open("num(勿动).txt",ios::in);
file_inin>>num;
file_inin.close();
剩下就很简单了!
完整代码
#include<D:/YRGAME.h>
#include<fstream>
#include<sstream>
#include<exception>
#include<direct.h>
using namespace std;
void init()
{
colorF0();
cout<<"|----------------|\n";
cout<<"| 按b求利率 |\n";
cout<<"| 按a求利息 |\n";
cout<<"|----------------|\n";
}
int main()
{
typedef float f;
init();
f benjin_=0,lilv_=0,shijian_=0,jieguo_=0,save_flag=0;
string num;
fstream file_inin;
file_inin.open("num(勿动).txt",ios::in);
file_inin>>num;
file_inin.close();
while (true)
{
int ch=getch();
if (ch==97)
{
cout<<"输入本金(单位元):";scanf("%f",&benjin_);
cout<<"输入利率(百分数,不需要输'%'):";scanf("%f",&lilv_);
cout<<"输入时间(单位年):";scanf("%f",&shijian_);
jieguo_=benjin_*(lilv_*0.01)*shijian_;
cout<<"利息:"<<jieguo_<<"\n";
cout<<"共取出:"<<jieguo_+benjin_<<"\n";
cout<<"算式:\n";
cout<<benjin_<<" x "<<shijian_<<" x "<<lilv_<<"%"<<"\n";
cout<<"="<<benjin_*shijian_<<" x "<<lilv_<<"%"<<"\n";
cout<<"="<<jieguo_<<"\n";
cout<<"要保存记录吗?输入0不保存,输入1保存";cin>>save_flag;
if(save_flag==0) {
system("cls");
init();
}
if(save_flag==1)
{
int num_int = atoi(num.c_str());//string转int
num_int += 1;
fstream filef;
filef.open("num(勿动).txt",ios::out|ios::binary);
fstream out;
out.open("num(勿动).txt",ios::out);
out<<num_int;
out.close();
/*********int->string**********/
stringstream ss;
ss<<num_int;
num=ss.str();
/*****************************/
fstream history;
history.open("使用记录.txt",ios::out|ios::app);
history<<num<<"."<<endl;
history<<"本金(单位元):"<<benjin_<<endl;
history<<"利率:"<<lilv_<<"%"<<endl;
history<<"时间(单位年):"<<shijian_<<endl;
jieguo_=benjin_*(lilv_*0.01)*shijian_;
history<<"利息:"<<jieguo_<<endl;
history<<"共取出:"<<jieguo_+benjin_<<endl;
history<<"算式:"<<endl;
history<<benjin_<<" x "<<shijian_<<" x "<<lilv_<<"%"<<endl;
history<<"="<<benjin_*shijian_<<" x "<<lilv_<<"%"<<endl;
history<<"="<<jieguo_<<endl<<endl;
history.close();
system("pause");
system("cls");
init();
}
}
else
{
cout<<"此功能暂未开发!";
system("pause");
system("cls");
init();
}
}
return 0;
}
devc++运行通过