计算器(轻喷)
  • 板块灌水区
  • 楼主__BSD_003__
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/6/24 18:31
  • 上次更新2024/6/24 21:32:25
查看原帖
计算器(轻喷)
1328360
__BSD_003__楼主2024/6/24 18:31

计算器:、

#include<bits/stdc++.h>
#include<stdio.h>
#include<windows.h>
#include<conio.h>
#pragma comment(lib,"winmm.lib")
//#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" ) // 设置入口地址
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;
}
2024/6/24 18:31
加载中...