C++简易计算器的实现

这篇具有很好参考价值的文章主要介绍了C++简易计算器的实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

定义:

计算器是近代人发明的可以进行数字运算的机器。

也就是说,计算器不等同于算盘,前者能自行运算,后者只能简便计算过程,在古代,人们发明了许多计算工具,如算筹、算盘、计算尺等,随着社会的发展和科技的进步,计算工具也经历了由简单到复杂,由低级向高级的发展变化。进入20世纪后,人们发明了计算器。计算器的出现解决了很多比较复杂的计算问题。计算器的使用非常简单,它的运算规则是从左往右算,输入数据后可以一眨眼就得出结果

计算器不局限与四则运算,还可以进行如开方,对数,三角函数之类的复杂运算,更有甚者,可以进行、、之类,或矩阵运算了。

今天,让我们来用C++编写简易计算器。

代码1:

#include<iostream>
using namespace std;


int add(int num1, int num2)
{
	int sum = num1 + num2;
	return sum;
}
int m(int num1, int num2)
{
	int sum = num1 - num2;
	return sum;
}
int time(int num1, int num2)
{
	int sum = num1 * num2;
	return sum;
}
int chu(int num1, int num2)
{
	int sum = num1 / num2;
	return sum;
}
int mod(int num1, int num2)
{
	int sum = num1 % num2;
	return sum;
}

int main()
{
	system("color 2E");
	float a, b,d;
	short c;
	printf("欢迎使用计算器,该计算器只支持整数输出\n");
	printf("加请按1,减请按2,乘请按3,除请按4,取余数请按5\n");
    u:
	cout << "请输入两个数" <<endl;
	cin >> a
	>> b;
	cout << "请输入运算类型:" << endl;
	cin >> c;
	switch (c)
	{
	case 1:
			d = add(a, b);
			break;
	case 2:
			d = m(a, b);
			break;
	case 3:
			d = time(a, b);
			break;
	case 4:
			d = chu(a, b);
			break;
	case 5:
			d = mod(a, b);
			break;
		default:
			break;
	}
	if ((a + b) > 32677 && (a - b) < -32678)
		cout << "溢出警报\a" << endl;
	else
	cout << d << endl;

	goto u;
}

这个计算器有诸多限制,它只能进行五种运算(还不能处理浮点),容易溢出,所以我做了改进。

代码2:

#include<cstdio>
#include<iostream>
using namespace std;

int main()
{
	system("color 2E");
	int a, b;
	char ch;
y:
	cout << "请输入算式:" << endl;
	cin>>a
		>>ch
		>>b;
	if (ch != '+' && ch != '-' && ch != '*' && ch != '/' && ch != '%')
	{
		printf("Error\n");
	}
	else
	{
		cout<< a<<" " << ch <<" "<<b << " = ";
	}
	switch (ch)
	{
	case '+':
	{
		cout << a + b << endl;
		break;
	}
	case '-':
	{
		cout  << a - b << endl;
		break;
	}
	case '*': 
	{
		cout << a * b << endl;
		break;
	}
	case '/': 
	{
		cout << a / b << endl;
		break;
	}
	case '%':
	{
		cout << a % b << endl;
		break; 
	}
	}
	goto y;
}

好用一点,可以输出算式了。

最后一点,无论什么计算器,如果要进行大于结果的运算或超过15位有效数字的浮点运算,需要高精度算法,详见:

https://blog.csdn.net/u011386173/article/details/109912035?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166477380516782395356593%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166477380516782395356593&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-109912035-null-null.142^v51^control,201^v3^control_2&utm_term=%E9%AB%98%E7%B2%BE%E5%BA%A6%E8%AE%A1%E7%AE%97&spm=1018.2226.3001.4187

谢谢。文章来源地址https://www.toymoban.com/news/detail-507560.html

到了这里,关于C++简易计算器的实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JAVA课程设计——GUI实现简易计算器

    一.设计任务及要求 任务:设计并实现一个计算器小程序 要求: 使用图形用户界面 能在键盘或鼠标上读入数据,并完成加,减,乘,除计算。 在屏幕上显示一个主菜单。 提示用户输入相应的数字键,分别执行加,减,乘,除计算功能和结束程序的功能。 二.需求分析: ​ 计算

    2024年02月12日
    浏览(29)
  • 【Servlet学习三】实现一个内存版本的简易计算器~

    目录 一、方式1:使用form表单的形式(不推荐) 🌈1、前端代码:HTML文件 🌈2、后端代码:Calculator_form.java文件 🌈3、最终效果 二、方式2:使用ajax形式(最常用重点!!!) 🌈1、前端代码:HTML文件 🌈2、后端代码:Calculator_ajax.java文件 🌈3、最终效果  注意: (1)前端

    2024年02月12日
    浏览(31)
  • 单片机实现简易计算器功能,附有解析与代码

    目录 首先分为根据要实现的功能来选择硬件和软件: 硬件部分 软件部分 输入部分: 计算部分: 连续计算: 源代码示例: 主函数: 键盘输入: LCD1602显示: 蜂鸣器: 延时函数: 首先我们要实现的功能有:多位显示,小数计算,连续计算,符号按错修改,, 用到LCD1602显示

    2024年02月09日
    浏览(33)
  • 简易计算器(详解用栈实现算术表达式求值)

    [问题描述] 一个算术表达式是由操作数(operand)、运算符(operator)和界限符(delimiter)组成的。假设操作数是 正实数 ,运算符只含 加减乘除 等四种运算符,界限符只含 左右括号 如:6+15*(21-8/4)。编程利用“ 运算符优先法 ”求算术表达式的值。 [基本要求] (1)读入一个合法的

    2024年02月08日
    浏览(35)
  • JAVA制作的简易计算器——傻瓜计算器

    用JAVA编写的傻瓜计算器 作用: 1.可以实现加法、减法、乘法、除法简单运算且是单一运算,不可混合使用。 2.CE为清除键 3.没有小数点O(∩_∩)O 思路: 创建JFrame窗口,设置标题,创建JButton,创建文本框JTextField用作显示。 先定义各种按钮类型,用作成员。定义窗口方法对窗口

    2024年02月11日
    浏览(31)
  • java 简易计算器

    1.使用Java图形界面组件设计软件,界面如图所示。 2.软件能够满足基本的“加、减、乘、除”等运算要求。 3.程序代码清晰,语法规范,结构合理,逻辑正确。 先分析,计算器大概是由三个大部分组成的:菜单栏,显示框,按钮。 所以定义一个类cal继承JFrame。 我们定义完后

    2024年02月01日
    浏览(39)
  • JAVA简易计算器

    1.C是清除键,功能是将之前所输入的数字、计算结果等信息全部归零 2.CE,清除当前输入的数据或符号 3.单击MS存储当前显示值,可以理解为放到存储区 4.单击MC清除存储区数值 5.单击MR将存储区数据显示到屏幕上 6.M+:当前显示的数与存储区的数相加 7.M-:当前显示的数与存储

    2024年02月09日
    浏览(39)
  • QT 简易计算器

    2024年02月09日
    浏览(31)
  • Android Studio实现简易计算器(带横竖屏,深色浅色模式,更该按钮颜色,selector,style的使用)

    目录 前言 运行结果: 运行截屏(p50e)  apk文件 源码文件  项目结构 总览 MainActivity.java drawable 更改图标的方法: blackbutton.xml bluebuttons.xml greybutton.xml orangebuttons.xml whitebutton.xml layout 布局文件  竖屏: 横屏: values         colors.xml strings.xml styles 浅色模式 深色模式 themes.xml

    2024年02月06日
    浏览(32)
  • 龙芯1b(LS1B200)使用LVGL7.0.1组件 按钮矩阵 实现简易计算器

    需求:通过按钮点击实现加减乘除的简易计算器。 1.我们使用矩阵按钮(lv_ btnmatrix )快速创建布局,文本框( lv_textarea)显示结果 。 2.在按钮回调中将点击结果加入文本框上显示。 矩阵按钮相对于普通按钮: • 对于基于网格的按钮布局,按钮矩阵更易于使用。 • 每个按钮矩阵

    2024年02月05日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包