#include<bits/stdc++.h>
#include<stdio.h>
#include<windows.h>
#include<conio.h>
#pragma comment(lib,"winmm.lib")
using namespace std;
void write(int x){
if(x=0){
putchar('-');
x=-x;
}
if(x>9){
write(x/10);
putchar(x%10+'0');
}
}
void reada(string a,int b) {
for (int i = 0; i < a.size(); i++) {
cout << a[i];
Sleep(b);
}
}
void readb(string a) {
for (int i = 0; i < a.size(); i++) {
cout << a[i];
Sleep(500);
}
}
void clean(){
system("cls");
}
void ys(char a12) {
if (a12 == 'Z')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
if (a12 == 'A')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE);
if (a12 == 'B')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED);
if (a12 == 'C')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_GREEN);
if (a12 == 'D')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN);
if (a12 == 'E')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN);
if (a12 == 'F')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE | FOREGROUND_RED);
if (a12 == 'G')
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_BLUE | FOREGROUND_GREEN);
}
int main(){
for(int i=1;i<=10;i++){
cout<<i*10<<'%'<<endl;
if(i<=3) cout<<"nitializing Game Main Logic......";
else if(i<=5) cout<<"Preparing......";
else if(i<=7) cout<<"Initializing Volrender Engine......";
else if(i<=9) cout<<"Almost there......";
else cout<<"Ready";
Sleep(500);
system("cls");
}
reada("Start!\n",30);
reada("兰奇计算器\n版本号:1.21.2\n制作者:小企鹅兰奇\n计算机版本号:5.11Dev-C++\n",25);
for(int k=0;k<1;k--){
char z;
reada("\n\n输入后请按回车!\n\n\n请输入一个字母:\na-计算\nb-完全数\nc-质数\nd-关于兰奇计算器\ne-退出程序\nf-乘方开方\ng-小数计算\nh-换背景色\ni-查看文件位置\nj-更改文字颜色\nk-几何计算",25);
cin>>z;
if(z=='a'){
clean();
long double n,m;
char ch;
reada("请输入一个算式,输入a+b为加法,输入a-b为减法,输入a*b为乘法,输入a/b为除法。(a和b为数,目前只支持两个数的加减乘除运算)",25);
cin>>n>>ch>>m;
if(ch=='+'){
cout<<n<<"+"<<m<<"="<<n+m;
}
if(ch=='-'){
cout<<n<<"-"<<m<<"="<<n-m;
}
if(ch=='*'){
cout<<n<<"*"<<m<<"="<<n*m;
}
if(ch=='/'){
cout<<n<<"/"<<m<<"="<<n/m;
}
}
if(z=='b'){
clean();
char num;
reada("请输入一个字母:\na-完全数判断\nb-输出范围内的完全数",30);
cin>>num;
if(num=='a'){
int sum;
reada("请输入一个非零自然数:",25);
cin>>sum;
int y=0;
for(int i=1;i<sum;i++){
if(sum%i==0){
y+=i;
}
}
if(y==sum){
cout<<sum;
reada("是完全数",25);
}
else{
cout<<sum;
reada("不是完全数",25);
}
}
if(num=='b'){
int n,m;
reada("输入两个非零自然数,用空格分割,将输出范围内的完全数",25);
cin>>n>>m;
for(int i=n;i<=m;i++){
int y=0;
for(int j=1;j<i;j++){
if(i%j==0){
y+=j;
}
}
if(y==i){
cout<<i;
}
}
}
}
if(z=='c'){
clean();
char num;
reada("请输入一个字母:\na-质数判断\nb-输出范围内的质数",25);
cin>>num;
if(num=='a'){
int n;
reada("请输入一个非零自然数:",25);
cin>>n;
int sum=0;
for(int i=2;i<n;i++){
if(n%i==0){
sum+=1;
}
}
if(sum==0){
cout<<n;
reada("是质数",25);
}
else{
cout<<n;
reada("不是质数",25);
}
}
if(num=='b'){
int n,m;
reada("输入两个非零自然数,用空格分割,将输出范围内的质数",25);
cin>>n>>m;
for(int i=n;i<m;i++){
int sum=0;
for(int j=2;j<i-1;j++){
if(i%j==0){
sum+=1;
}
}
if(sum==0){
cout<<i<<" ";
}
}
}
}
if(z=='d'){
clean();
reada("兰奇计算器由小企鹅兰奇开发,是基于DEVC++环境开发的。\n开发者联系方式: \n欢迎提供改进建议,及报告Bug!",25);
}
if(z=='e'){
clean();
reada("感谢使用!(别忘了帮我宣传宣传哦!)\nbyebye",25);
readb("~~~");
exit(0);
}
if(z=='f'){
clean();
reada("请输入一个字母:\na-乘方\nb-开方",25);
char sum;
cin>>sum;
if(sum=='a'){
reada("请输入两个非零自然数,用空格分割,将输出第二个数个第一个数相乘(第一个数是底数,第二个数是指数):",25);
double n,m;
cin>>n>>m;
cout<<pow(n,m);
}
if(sum=='b'){
reada("请输入一个非零自然数(要开根号的数):",25);
int n;
cin>>n;
cout<<fixed<<setprecision(20)<<sqrt(n);
}
}
if(z=='g'){
clean();
long double n,m;
char ch;
reada("请输入一个算式,输入a+b为加法,输入a-b为减法,输入a*b为乘法,输入a/b为除法。(a和b为数,目前只支持两个数的加减乘除运算)",25);
cin>>n>>ch>>m;
if(ch=='+'){
cout<<n<<"+"<<m<<"="<<n+m;
}
if(ch=='-'){
cout<<n<<"-"<<m<<"="<<n-m;
}
if(ch=='*'){
cout<<n<<"*"<<m<<"="<<n*m;
}
if(ch=='/'){
cout<<n<<"/"<<m<<"="<<n/m;
}
}
if(z=='h'){
clean();
reada("背景色0.黑色 1.蓝色 2.绿色 3.湖蓝色 4.红色 5.紫色 6.黄色 7.白色 8.灰色 9.淡蓝色",25);
int m;
cin>>m;
if(m==0){
system("color 0F");
}
if(m==1){
system("color 1F");
}
if(m==2){
system("color 2F");
}
if(m==3){
system("color 3F");
}
if(m==4){
system("color 4F");
}
if(m==5){
system("color 5F");
}
if(m==6){
system("color 6F");
}
if(m==7){
system("color 7F");
}
if(m==8){
system("color 8F");
}
if(m==9){
system("color 9F");
}
}
if(z=='i'){
clean();
system("dir");
}
if(z=='j'){
clean();
reada( "你需要什么颜色的文字?\n",25);
reada( "A.蓝色,B.红色,C.绿色,D.金色,E.不变,F.粉色,G.青色\n",25);
char bj;
cin >> bj;
if (bj == 'A'){
ys('A');
}
else if (bj == 'B'){
ys('B');
}
else if (bj == 'C'){
ys('C');
}
else if (bj == 'E'){
continue;
}
else if(bj == 'D'){
ys('D');
}
else if(bj == 'F'){
ys('F');
}
else if(bj == 'G'){
ys('G');
}
}
if(z=='k'){
clean();
reada("请问您要以下哪种计算?",25);
reada("\na-正方形面积计算\nb-正方形周长计算\nc-长方形面积计算\nd-长方形周长计算\ne-三角形面积计算\nf-圆形面积计算\ng-圆形周长计算\nh-圆柱体积计算\ni-圆锥体积计算\nj-球体积计算\nk-球表面积计算",20);
char s7;
cin>>s7;
if(s7=='a'){
clean();
reada("请输入正方形边长:",20);
int r;
cin>>r;
cout<<r*r;
}
if(s7=='b'){
clean();
reada("请输入正方形边长:",20);
int r;
cin>>r;
cout<<4*r;
}
if(s7=='c'){
clean();
reada("请输入长方形的长和宽,用空格分割:",20);
int r,r1;
cin>>r>>r1;
cout<<r*r1;
}
if(s7=='d'){
clean();
reada("请输入长方形的长和宽,用空格分割:",20);
int r,r1;
cin>>r>>r1;
cout<<2*(r+r1);
}
if(s7=='e'){
clean();
reada("请输入三角形的底和高,用空格分割:",20);
int r,r1;
cin>>r>>r1;
cout<<r*r1/2;
}
if(s7=='h'){
clean();
reada("请输入圆柱的底面半径和高,用空格分割(派取3.14):",20);
double r,r1;
cin>>r>>r1;
cout<<3.14*r*r*r1;
}
if(s7=='f'){
clean();
reada("请输入圆的半径(派取3.14):",20);
double r;
cin>>r;
cout<<3.14*r*r;
}
if(s7=='g'){
clean();
reada("请输入圆的半径(派取3.14):",20);
double r;
cin>>r;
cout<<2*3.14*r;
}
if(s7=='i'){
clean();
reada("请输入圆锥的底面半径和高,用空格分割(派取3.14):",20);
double r,h;
cin>>r>>h;
cout<<3.14*r*r*h/3;
}
if(s7=='j'){
clean();
reada("请输入球的半径(派取3.14):",20);
double r;
cin>>r;
cout<<3.14*r*r*r/3*4;
}
if(s7=='k'){
clean();
reada("请输入球的半径(派取3.14):",20);
double r;
cin>>r;
cout<<4*3.14*r*r;
}
}
}
return 0;
}