进制转换计算器c代码(大三c++程序设计 计算器 高分悬赏)
本文目录
大三c++程序设计 计算器 高分悬赏
/*本程序较简单你如果有兴趣可以用栈实现进制转换用运算符重载实现加减乘除取余等自己编写算法实现三角函数计算等等时间关系就写到这了*/#include 《iostream》#include 《cmath》#include 《stdlib.h》using namespace std;#define pi 3.14159265/************************************************************/class Trigonometric{//三角函数实现private: double number;//要操作的数 char ch3;//选择控制public: void print1();//界面输出 void set1(double num)//传值给操作函数 { number=num;}};void Trigonometric::print1(){ cout《《"\t\t请输入一个弧度数:"《《endl; cin》》number; set1(number); cout《《"\t\t 1.求sin(a)"《《endl; cout《《"\t\t 2.求cos(a)"《《endl; cout《《"\t\t 3.求tan(a)"《《endl; cout《《"\t\t 4.求全部!"《《endl; cin》》ch3;back3: if(ch3==’1’) cout《《"sin("《《number《《")="《《sin(number)《《endl; else if(ch3==’2’) cout《《"cos("《《number《《")="《《cos(number)《《endl; else if(ch3==’3’) cout《《"tan("《《number《《")="《《tan(number)《《endl; else if(ch3==’4’) { cout《《"sin("《《number《《")="《《sin(number)《《endl; cout《《"cos("《《number《《")="《《cos(number)《《endl; cout《《"tan("《《number《《")="《《tan(number)《《endl; } else { cout《《"\t\t输入有误!请重新选择:"《《endl; cin》》ch3; goto back3; }}/************************************************************/class HexBinDecOct{//进制转换private: char str2;//存储二进制 char str8;//存储八进制 char str16;//存储十六进制 char ch3;//选择控制 int number;//要转换的数public: void print2(); void set2(double num) { number=num;} void conversionAll(int number);//全部转换 char sixteen(int number);//转换为十六进制 char eight(int number);//转换为八进制 char two(int number);//转换为二进制};void HexBinDecOct::print2(){ cout《《"\t\t请输入一个十进制数:"《《endl; cin》》number; set2( number); cout《《"\t\t ***********************************"《《endl; cout《《"\t\t * 1.十进制转换为二进制 *"《《endl; cout《《"\t\t * 2.十进制转换为八进制 *"《《endl; cout《《"\t\t * 3.十进制转换为十六进制 *"《《endl; cout《《"\t\t * 4.十进制转换为二、八、十六进制 *"《《endl; cout《《"\t\t *请选择:1-4 *"《《endl; cout《《"\t\t ***********************************"《《endl; cin》》ch3;back4: if(ch3==’1’)//1.十进制转换为二进制 cout《《"\t\t"《《number《《"\t转换为二进制:"《《two(number)《《endl; else if(ch3==’2’)//十进制转换为八进制 cout《《"\t\t"《《number《《"\t转换为八进制:"《《eight(number)《《endl; else if(ch3==’3’)//十进制转换为十六进制 cout《《"\t\t"《《number《《"\t转换为十六进制:"《《sixteen(number)《《endl; else if(ch3==’4’)//十进制转换为二、八、十六进制 conversionAll(number); else { cout《《"\t\t输入有误!请重新选择:"《《endl; cin》》ch3;//重新选择 goto back4;//重新转换 }}char HexBinDecOct::two(int number){ itoa(number, str2, 2); return *str2;}char HexBinDecOct::eight(int number){ itoa(number, str8, 8); return *str8;} char HexBinDecOct::sixteen(int number){ itoa(number, str16, 16); return *str16;}void HexBinDecOct::conversionAll(int number){ itoa(number, str2, 2); itoa(number, str8, 8); itoa(number, str16, 16); cout《《"\t\t********************"《《endl; cout《《"\t\t* 1.转换为二进制 *"《《str2《《endl; cout《《"\t\t* 2.转换为八进制 *"《《str8《《endl; cout《《"\t\t* 3.转换为十六进制*"《《str16《《endl; cout《《"\t\t* 请选择:1-3 *"《《endl; cout《《"\t\t********************"《《endl;}/************************************************************/class Calculate{//一般计算private: double sum;//存储运算结果 char ch3;//选择控制 double num1,num2;//两个操作数public: void set3(double num1,double num2)//赋值 { num2=num2;num1=num1;} void print3(); double add(double num1,double num2);//加 double subtract(double num1,double num2);//减 double multiplication(double num1,double num2);//乘 double divide(double num1,double num2);//除 double mod(double num1,double num2);//取余};void Calculate::print3(){ cout《《"\t\t请输入两个数:"《《endl; cin》》num1》》num2; set3( num1,num2); cout《《"\t\t*******************"《《endl; cout《《"\t\t* 1.加法运算 *"《《endl; cout《《"\t\t* 2.减法运算 *"《《endl; cout《《"\t\t* 3.乘法运算 *"《《endl; cout《《"\t\t* 4.除法运算 *"《《endl; cout《《"\t\t* 5.取余运算 *"《《endl; cout《《"\t\t*******************"《《endl; cout《《"\t\t请输入菜单项(1-6):"; cin》》ch3;back2: if(ch3==’1’) {// 1.加法运算 cout《《"\t\t"《《num1《《’+’《《num2《《’=’《《add(num1,num2)《《endl; } else if(ch3==’2’) {// 2.减法运算 cout《《"\t\t"《《num1《《’-’《《num2《《’=’《《subtract(num1,num2)《《endl; } else if(ch3==’3’) {// 3.乘法运算 cout《《"\t\t"《《num1《《’*’《《num2《《’=’《《multiplication(num1,num2)《《endl; } else if(ch3==’4’) {// 4.除法运算 cout《《"\t\t"《《num1《《’/’《《num2《《’=’《《divide(num1,num2)《《endl; } else if(ch3==’5’) {// 5.取余运算 cout《《’\t\t’《《num1《《’%’《《num2《《’=’《《mod(num1,num2)《《endl; } else { cout《《"\t\t输入有误!请重新选择:"《《endl; cin》》ch3; goto back2; } }double Calculate::add(double num1,double num2){ return sum=num1+num2;}double Calculate::subtract(double num1,double num2){ return sum=num1-num2;}double Calculate::multiplication(double num1,double num2){ return sum=num1*num2;}double Calculate::divide(double num1,double num2){ if(num2==0) return sum=num1/num2; else return 0; }double Calculate::mod(double num1,double num2){ if(num2==0) return sum=(int)num1%(int)num2; else return 0;}/************************************************************/int main(){ //int num1=0,num2=0,number=0; Trigonometric tri;//三角函数对象 HexBinDecOct hex;//进制转换对象 Calculate cal;//一般计算对象 char ch1,ch3;back1: { do{ cout《《"\t\t*****主菜单**********"《《endl; cout《《"\t\t* *"《《endl; cout《《"\t\t* 1. 基本运算 *"《《endl; cout《《"\t\t* 2. 三角函数 *"《《endl; cout《《"\t\t* 3. 进制转换 *"《《endl; cout《《"\t\t* *"《《endl; cout《《"\t\t* 请选择:1---3 *"《《endl; cout《《"\t\t*********************"《《endl; cin》》ch1; if(ch1==’1’) {// 1.基本运算 cal.print3(); } else if(ch1==’2’) {// 2.三角函数 tri.print1(); } else if(ch1==’3’) {// 3.进制转换 hex.print2(); } else { cout《《"输入有误!"《《endl; goto back1; } cout《《"again?(y/n)"《《endl; cin》》ch3; }while(ch3==’y’||ch3==’Y’); }; return 0;} 除了点问题,现在改好了,希望是你想要的
Win的计算器中 二进制转换成十进制 实现过程的C++代码是
#include 《iostream》using namespace std;#include"string.h"double power(double x,int n);int main(){ int i,t,value=0; char ch; cin》》ch; t=strlen(ch); for(i=t-1;i》=0;i--) { if(ch==’1’) value+=int(power(2,t-1-i)); } cout《《"十进制数为"《《value《《endl; getchar();getchar(); getchar(); // return 0;}double power(double x,int n) { double val=1.0; while(n--) val*=x; return(val); }
用C语言编写一个计算器程序
#include《stdio.h》#include《windows.h》#include《math.h》#define p 3.1415926 #define r p/180 //r=p/180,p=3.14....,p/180是求的1弧度,下面sin(里面要求的是弧度),sin(30弧度)=0.5。 void main(){float i,j,k;int l,m,n,a;char cmd;LOOP:system("cls");printf("***********************\n");printf("*******小寒计算器******\n");printf("***********************\n");printf("\n\n本计算器提供+、-、*、/四种运算。\n");printf("p-代表圆周率pai。\n");printf("a-代表十进制转换为二进制。\n");printf("b-代表十进制转换为八进制。\n");printf("c-代表十进制转换为十六进制。\n");printf("d-代表该数值开方。\n");printf("e-代表该数值开立方。\n");printf("f-代表求几次方。\n");printf("S-代表sin。\n");printf("C-代表cos。\n");printf("T-代表tan。\n");printf("\n\n请输入要计算的数字和运算符号,输入“#”时,结束;输入“!”时复位。\n");scanf("%f",&k);while((cmd=getchar())!=’#’){if(i!=0)switch(cmd){case ’+’: scanf("%f",&i);k=k+i;printf("=%5.2f",k);break; case ’-’: scanf("%f",&i);k=k-i;printf("=%5.2f",k);break; case ’*’: scanf("%f",&i);k=k*i;printf("=%5.2f",k);break; case ’/’: scanf("%f",&i);k=k/i;printf("=%5.2f",k);break;case ’p’: k=k*p;printf("%6.4f",k);break; case ’f’: printf("请输入要求该数字的几次方:");scanf("%d",&n);i=k;for(m=0;m《n-1;m++)k=k*i;printf("%5.2f",k);break; case ’a’: printf("转换成二进制\n");m=0;while((int)k》0){ l=k;k=k/2;l=l%2; a=l;m++;}for(n=m-1;n》=0;n--)printf("%d",a);break; case ’b’: printf("转换成八进制\n");m=0;while((int)k》0){ l=k;k=k/8;l=l%8; a=l;m++;}for(n=m-1;n》=0;n--)printf("%d",a);break;case ’c’: printf("转换成十六进制\n");m=0;while((int)k》0){ l=k;k=k/16;l=l%16; a=l;m++;}for(n=m-1;n》=0;n--){if(a==10){ printf("A");continue;}else if(a==11){ printf("B");continue;}else if(a==12){ printf("C");continue;}else if(a==13){ printf("D");continue;}else if(a==14){ printf("E");continue;}else if(a==15){ printf("F");continue;} printf("%d",a);}break; case ’e’: printf("该数值开立方得\n");i=pow(k,1.0/3);printf("%5.2f",i );break;case ’d’: printf("该数值开方得\n");i=k/2;j=sqrt(k);printf("%5.2f",j);break; case ’S’: k=k*r;i=sin(k);printf("%5.2f",i);break;case ’C’: k=k*r;i=cos(k);printf("%5.2f",i);break; case ’T’: k=k*r;i=tan(k);printf("%5.2f",i);break; case ’!’: goto LOOP;}} }
c++编写进制转换计算器 怎样实现计算器自动识别输入的数字是二进制,
两种方式都可取。比如:1、加前缀2进制加B,如B101110011;8进制加O,如O10234567;10进制加D,如D0123456789;16进制加X,如X123456789ABCDEF。2、不同的入口可显示一个菜单,要求用户选择一个选项后再输入。如1输入2进制,2输入8进制,3输入10进制,4输入16进制。
更多文章:
win7系统主题下载(怎么给win7系统换主题一套的那种 有没有软件可以下载)
2024年6月20日 15:05
cpu频率越高越好吗(cpu频率越高越好吗,高低频有什么区别)
2024年2月15日 20:40
office2007产品密钥永久激活(求Microsoft Office 2007 可用密钥(激活码))
2024年6月25日 22:48
鬼吹灯单机版(求有适合安卓手机的《正版鬼吹灯(网络*火热)》手机单机游戏)
2024年7月24日 11:38
cf单机版最新版本下载(穿越火线单机版内置修改器菜单下载方法)
2024年5月8日 03:04
可以赚钱的游戏手游(有什么单号搬砖的游戏呢,手游端游都可,多开伤不起)
2024年6月11日 02:58