日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

20172307 结对编程项目-四则运算 第二周 阶段总结

發布時間:2025/7/14 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20172307 结对编程项目-四则运算 第二周 阶段总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

20172307 結對編程項目-四則運算 第二周 階段總結

(結隊項目碼云地址)

相關過程截圖(關鍵代碼處加了注釋)

  • 編寫出實現中綴轉后綴的類Transform
/*Transform.java 作者:趙曉海 黃宇瑭用于將一個中綴表達式轉換為對應的后綴表達式*/import java.util.Stack;public class Transform {String former;//中綴表達式String last;//后綴表達式//構造函數public Transform(String former){this.former=former;last="";}//得到后綴表達式的方法public String getLast() {return last;}//將中綴表達式轉為后綴表達式的方法public void transform(){// int length=(former.length()+1)/2;//StringTokenizer toArraylist=new StringTokenizer(former);String []str1=former.split("\\s");/*int num1=0;while (toArraylist.hasMoreTokens()){str1[num1]=toArraylist.nextToken();num1++;}*/String [] str2=new String[str1.length-1];for (int a=0;a<str1.length-1;a++)str2[a]=str1[a];Stack stack=new Stack();int num2=0;while (num2<str2.length){if(str2[num2].equalsIgnoreCase("+")==false&&str2[num2].equalsIgnoreCase("-")==false&&str2[num2].equalsIgnoreCase("×")==false&&str2[num2].equalsIgnoreCase("÷")==false)last+=str2[num2]+" ";elseif (stack.empty()==true)stack.push(str2[num2]);elseif ((stack.peek().equals("+")==true||stack.peek().equals("-")==true)&&(str2[num2].equalsIgnoreCase("×")||str2[num2].equalsIgnoreCase("÷")))stack.push(str2[num2]);else {last+=stack.peek()+" ";stack.pop();stack.push(str2[num2]);}num2++;}while (stack.empty()==false){last+= stack.peek()+" ";stack.pop();}}}
  • 測試Transform
/*TransformTest.java 作者:趙曉海 黃宇瑭Transform類的驅動類*/public class TransformTest {public static void main(String[] args) {Transform a =new Transform("22 + 10/3 ÷ 1/10 =");a.transform();//使用將中綴表達式轉為后綴表達式的方法System.out.println(a.getLast());}}

  • 編寫出計算后綴表達式值的類Calculate
/*Calculate.java 作者:趙曉海 黃宇瑭用于計算一個后綴表達式*/import eg.RationalNumber;import java.util.Stack;public class Calculate {String [] str1;String result;//計算結果//構造函數public Calculate (String calculate){str1=calculate.split("\\s");}//將字符串形式的整數或者分數轉換為RationalNumber類的對象的方法public RationalNumber toRationalNumber(String num){if (num.contains("/")==false){int a =Integer.parseInt(num);RationalNumber rationalNumber1 =new RationalNumber(a,1);return rationalNumber1;}else {/* StringTokenizer st = new StringTokenizer(num,"/");int numerator =Integer.parseInt(st.nextToken("/"));int denominator=Integer.parseInt(st.nextToken("/"));*/String[] Array =num.split("/");int numerator = Integer.parseInt(Array[0]);int denominator=Integer.parseInt(Array[1]);RationalNumber rationalNumber2 =new RationalNumber(numerator,denominator);return rationalNumber2;}}//計算中綴表達式,并將結果保存在result中的方法public void ToResult(){Stack stack1=new Stack();int start =0;while (start<str1.length){if (str1[start].equalsIgnoreCase("+")==false&&str1[start].equalsIgnoreCase("-")==false&&str1[start].equalsIgnoreCase("×")==false&&str1[start].equalsIgnoreCase("÷")==false){stack1.push(str1[start]);}elseif (str1[start].equalsIgnoreCase("+")==true){RationalNumber num1=this.toRationalNumber(String.valueOf(stack1.peek()));stack1.pop();RationalNumber num2=this.toRationalNumber(String.valueOf(stack1.peek()));stack1.pop();RationalNumber finish =num2.add(num1);String str3=finish.toString();stack1.push(str3);}elseif (str1[start].equalsIgnoreCase("-")==true){RationalNumber num1=this.toRationalNumber(stack1.peek().toString());stack1.pop();RationalNumber num2=this.toRationalNumber(stack1.peek().toString());stack1.pop();RationalNumber finish =num2.subtract(num1);String str3=finish.toString();stack1.push(str3);}elseif (str1[start].equalsIgnoreCase("×")==true){RationalNumber num1=this.toRationalNumber(stack1.peek().toString());stack1.pop();RationalNumber num2=this.toRationalNumber(stack1.peek().toString());stack1.pop();RationalNumber finish =num2.multiply(num1);String str3=finish.toString();stack1.push(str3);}else{RationalNumber num1=this.toRationalNumber(String.valueOf(stack1.peek()));stack1.pop();RationalNumber num2=this.toRationalNumber(String.valueOf(stack1.peek()));stack1.pop();RationalNumber finish =num2.divide(num1);String str3=finish.toString();stack1.push(str3);}start++;}String str4=stack1.peek().toString();result=str4;}//得到計算結果的方法public String getResult() {return result;}}
  • 測試Calculate

遇到的困難及解決方法

  • 問題一:在對字符串進行比較時用了“=”,導致測試時沒有產生預期的效果
  • 問題一解決方式:只要用equals,進行比較就行。
  • 問題二:在運行計算后綴表達式的驅動類時出現了越界錯誤。
  • 運行錯誤截圖:
  • 問題二解決方式:解決這問題的是趙曉海同學,我沒有起到什么作用。(在這里引用趙曉海博客的解決過程。)
    通過單步調試,String型整數的長度不應定是1,要是整數,字符串中沒有字符“/”即可,于是通過查API找到String類中的Contains方法適用.
  • 調試成功截圖
  • 代碼錯誤之處
  • 代碼改正之處

項目劃分及貢獻值分配

  • 我主要負責的是對代碼實現的功能進行測試,并對產生的錯誤提出修改意見

  • 貢獻值劃分
    趙曉海:70%
    黃宇瑭:30%

結隊伙伴評價

趙曉海同學在這次項目的編寫中付出的努力比我要多很多很多,而且還會幫我解釋我不懂的地方,真的感謝他對我的幫助。
(結隊伙伴博客)

結隊照片

轉載于:https://www.cnblogs.com/20172307hyt/p/9008881.html

總結

以上是生活随笔為你收集整理的20172307 结对编程项目-四则运算 第二周 阶段总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 涩涩视频在线观看免费 | 六月婷婷激情 | 激情综合区 | 聚色屋| 久久亚洲av成人无码国产电影 | 久久久久久9999 | 91九色丨porny丨肉丝 | 欧美成人激情在线 | 欧美性猛交一区二区三区精品 | 亚洲欧洲日本国产 | 极品超粉嫩尤物69xx | 国产二区免费 | 辟里啪啦国语版免费观看 | 亚洲福利精品 | 日韩欧美成人一区二区三区 | av黄网站| 人妻av一区二区三区 | 亚洲精品乱码久久久久 | 性少妇videosexfreexxx片 | 国产精品呻吟 | av成人免费在线观看 | 中文字幕亚洲不卡 | 日本在线视频一区二区三区 | 亚洲综合首页 | 少妇裸体淫交视频免费看高清 | 国产人伦精品一区二区三区 | 亚洲最大福利视频 | 国产精品探花一区二区三区 | 天堂成人网 | 国产香蕉尹人视频在线 | 泰坦尼克号3小时49分的观看方法 | 一区二区三区精品视频 | 久久久久久国产精品三区 | av手机免费观看 | 天天爱天天插 | av全黄| 中文字幕高清 | 亚洲免费精品视频在线观看 | 成年人黄色录像 | 波多野结衣激情视频 | 黄色av网| 国产日产欧洲无码视频 | 久久久视频6r | eeuss国产一区二区三区黑人 | 日日操网 | 激情久久久久久久 | 欧美日韩午夜激情 | 国产一区二区色 | 深夜视频在线观看 | 在线色播 | 韩国三级中文字幕hd久久精品 | 久久99综合 | 国产精品毛片一区二区在线看 | 亚洲区第一页 | 亚洲综合色吧 | 亚洲第5页 | 成人在线免费观看网站 | 色哟哟导航 | 中文字字幕一区二区三区四区五区 | 国产成人资源 | 明星双性精跪趴灌满h | 青青草一区二区三区 | 亚洲老女人| 日韩福利视频一区 | 亚洲天堂一级 | 黄免费在线观看 | 国产经典一区二区三区 | 国产成人无码精品久久二区三 | 捆绑调教视频网站 | 美女无遮挡网站 | 日本少妇吞精囗交视频 | 四虎久久| 亚洲做受高潮无遮挡 | 日韩一级大片 | 色汉综合 | 成年人激情网 | 亚洲天堂av中文字幕 | 国产午夜精品一区 | 无码 人妻 在线 视频 | 午夜精品福利一区二区 | 好吊操这里只有精品 | 欧美裸体xxxx极品少妇 | 无码精品人妻一区二区 | 欧美整片sss | 欧美精品做受xxx性少妇 | 日本网站在线看 | 超碰520| 99人妻碰碰碰久久久久禁片 | 91久久国产精品 | 亚州黄色 | 中国亚洲老头同性gay男男… | 好吊日在线观看 | 国产69视频在线观看 | 亚洲欧美强伦一区二区 | 精品99999 | 成人极品| 久久久久亚洲av成人毛片韩 | 女人18毛片毛片毛片毛片区二 | av 日韩 人妻 黑人 综合 无码 |