喵宅苑 MewoGarden × 技术宅社区II | Z站 Z Station 棒棒哒纯文字二次元技术社区

正文

求助_(:з」∠)_关于简问题单的计算器的连续运算

作者:纯净物
现在的状况就是可以简单运算,但是连续那种,比如1+3-2这种就不行,只能实现两位数的四则运算_(:з」∠)_是需要创建个变量来存储sum1 的值么?还是怎么OJZ 求帮助…… using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace calculator { public partial class Form1 : Form { public Form1() { InitializeComponent(); } bool operatorFlag = false; public void InputNumber(string number1) { if (tBanswer.Text == "0") { tBanswer.Text = ""; } tBanswer.Text = tBanswer.Text + number1; } private void Form1_Load(object sender, EventArgs e) { } private void bonDec_Click(object sender, EventArgs e) { if (tBanswer.Text.IndexOf(".") == -1) InputNumber("."); } private void bon00_Click(object sender, EventArgs e) { InputNumber("0"); } private void bon01_Click(object sender, EventArgs e) { InputNumber("1"); } private void bon02_Click(object sender, EventArgs e) { InputNumber("2"); } private void bon03_Click(object sender, EventArgs e) { InputNumber("3"); } private void bon04_Click(object sender, EventArgs e) { InputNumber("4"); } private void bon05_Click(object sender, EventArgs e) { InputNumber("5"); } private void bon06_Click(object sender, EventArgs e) { InputNumber("6"); } private void bon07_Click(object sender, EventArgs e) { InputNumber("7"); } private void bon08_Click(object sender, EventArgs e) { InputNumber("8"); } private void bon09_Click(object sender, EventArgs e) { InputNumber("9"); } public static string numbersaved; public static string signsaved; public void SaveInputed(string num1, string sign1) { if (num1 == "0" | num1 == "") return; numbersaved = num1; signsaved = sign1; tBanswer.Text = "0"; } private void bonAdd_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "加"); } private void bonSub_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "减"); } private void bonMul_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "乘"); } private void bonDiv_Click(object sender, EventArgs e) { SaveInputed(tBanswer.Text, "除"); } private void bonEqula_Click(object sender, EventArgs e) { string numbernow = tBanswer.Text; if (signsaved == "" | numbersaved == "" | numbernow == "" | numbernow == "0") return; tBanswer.Text = Calcuration(numbersaved, signsaved, numbernow); signsaved = ""; numbersaved = ""; } public string Calcuration(string num1, string sign1, string num2) { float number1, number2, sum1 = 0, result=0; try { number1 = (float)(Double.Parse(num1)); number2 = (float)(Double.Parse(num2)); if (sign1 == "加") { sum1 = number1 + number2; } if (sign1 == "减") { sum1 = number1 - number2; } if (sign1 == "乘") { sum1 = number1 * number2; } if (sign1 == "除") { sum1 = number1 / number2; } return result.ToString(); } catch { return ""; } } private void bonC_Click(object sender, EventArgs e) { tBanswer.Text = "0"; numbersaved = ""; signsaved = ""; } } }

回复

代码不要写在一起

作者:不要不要的
1代码不要写在一起 不好管理的  2写代码加注释  养成习惯  对将来有好处的 3你这个拆分  输入模块  计算模块 显示模块  分开来写 这样清晰一些 4你这会出BUG的  如果你是个触屏的电脑  我同时按下了所有键 程序会不会挂掉? 做一个输入流  可以使是list型的列表存储你的输入  计算模块可以从列表读取你的输入这样可以降低出错的几率
查看回复

创建一个变量来储存上一个运算结果是必要的

作者:wugy315
创建一个变量来储存上一个运算结果是必要的
查看回复

你可以拆开来算

作者:纯净物
查看回复

你可以拆开来算

作者:御坂2003号
你可以拆开来算
查看回复
上一页
下一页
0%
站点地图友情链接:
喵宅苑
喵空间社区程序
喵宅苑 静态版
宅喵RPG地图编辑器
络合兔
Lanzainc
技术宅
小五四博客
莉可POI
Mithril.js
枫の主题社
Project1
午后少年
机智库
七濑胡桃
xiuno
幻想の日常
魂研社
Nothentai
0xffff
欲望之花
泽泽社长
淀粉月刊
HAYOU
红客联盟
异次元
轻之国度
神奇宝贝新生代
游戏狗
口袋双子星
我的世界论坛
梦次元
动漫东东
动漫国际
精艺论坛
78动漫
吐槽弹幕网
漫客栈