亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • Python編寫一個計算器程序,實現加減乘除和取余二元運算的方法有哪些

Python編寫一個計算器程序,實現加減乘除和取余二元運算的方法有哪些

發布時間:2020-08-10 11:25:36 來源:億速云 閱讀:501 作者:小新 欄目:開發技術

這篇文章主要介紹Python編寫一個計算器程序,實現加減乘除和取余二元運算的方法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

方法一

結合lambda表達式、函數調用運算符、標準庫函數對象、C++11標準新增的標準庫function類型,編寫一個簡單的計算器,可實現簡單的加、減、乘、除、取余二元運算。代碼如下:

#include "pch.h"
#include <iostream>
#include <functional>
#include <map>
#include <string>
using namespace std;
 
int add(int i, int j)
{
	return i + j;
}
 
// 使用函數調用運算符
struct divide
{
	int operator()(int i, int j)
	{
		return i / j;
	}
};
 
auto mod = [](int i, int j) {return i % j; };
 
map<string, function<int(int, int)>> binops = 
{
  {"+", add},                 // 使用函數指針
  {"-", minus<int>()},             // 使用標準庫函數對象
  {"*", [](int i, int j) {return i * j; }},  // 使用未命名的lambda表達式
  {"/", divide()},               // 使用函數調用運算符
  {"%", mod}                  // 命名了的lambda表達式
};
 
int main()
{
	int num1, num2;
	string s;
 
	while (cin >> num1)
	{
		cin >> s >> num2;
		cout << num1 << s << num2 << "=" << binops[s](num1, num2) << endl;
	}
 
	return 0;
}

運行結果如下:

Python編寫一個計算器程序,實現加減乘除和取余二元運算的方法有哪些

方法二

方法一中使用了很多C++11標準新增的功能,比如關聯容容器map使用的列表初始化、標準庫function類型、lambda表達式都是C++11標準新增的特性。下面方法二只簡單使用了函數指針來實現。

#include "pch.h"
#include <iostream>
#include <functional>
#include <map>
#include <string>
using namespace std;
 
typedef int Func(int, int);
 
int add(int i, int j)
{
	return i + j;
}
 
int subtract(int i, int j)
{
	return i - j;
}
 
int multiply(int i, int j)
{
	return i * j;
}
 
int divide(int i, int j)
{
	return i / j;
}
 
int mod(int i, int j)
{
	return i % j;
}
 
map<string, Func*> binops;
 
int main()
{
	binops.insert(make_pair("+", add));
	binops.insert(make_pair("-", subtract));
	binops.insert(make_pair("*", multiply));
	binops.insert(make_pair("/", divide));
	binops.insert(make_pair("%", mod));
	
	int num1, num2;
	string s;
	while (cin >> num1)
	{
		cin >> s >> num2;
		cout << num1 << s << num2 << "=" << binops[s](num1, num2) << endl;
	}
 
	return 0;
}

運行結果:

Python編寫一個計算器程序,實現加減乘除和取余二元運算的方法有哪些

以上是Python編寫一個計算器程序,實現加減乘除和取余二元運算的方法有哪些的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建湖县| 贺兰县| 府谷县| 文化| 肇州县| 拉孜县| 昌宁县| 昆明市| 建水县| 怀集县| 文成县| 敦煌市| 米林县| 东乡族自治县| 宁波市| 台江县| 师宗县| 新安县| 鸡东县| 望谟县| 扎囊县| 朝阳市| 邵东县| 大理市| 湄潭县| 固阳县| 宾阳县| 隆化县| 泸西县| 安塞县| 钟祥市| 庆云县| 安仁县| 尉氏县| 清徐县| 延川县| 西藏| 儋州市| 潮州市| 马鞍山市| 鹿泉市|