看板 java 關於我們 聯絡資訊
爬過板上的文後 給初學的自己一個練習的題目 但是卻遇到一些疑惑... 我原本是想用SWING寫出一個計算機 但是想說先用CONSOLE來確認自己的邏輯 以下是我的程式碼 ====================== public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("strat math"); double y = input.nextDouble(); //這邊的Y如果輸入的不是數字而是運算符號的話會有問題 //而在這邊加上TRY CATCH的話 底下的Y會因為沒有初始值而出現錯誤... a: for (;;) { String msg = input.next(); switch (msg.charAt(0)) { case '+': y += input.nextDouble(); //而每個CASE裡的input.nextDouble()也會出現類似的問題 //我知道那是因為我一開始宣告變數是double型態 //所以這邊如果是輸入成運算符號的話會有問題 continue a; case '-': y -= input.nextDouble(); continue a; case '*': y *= input.nextDouble(); continue a; case '/': y /= input.nextDouble(); continue a; default: System.out.println(+y); break; } break a; } System.out.println("math over"); } 這是我第一次練習書上沒有的程式 希望板上的前輩可以給予批評指教 謝謝 另外我想請教的是... 關於這個計算機的程式 我的邏輯上有沒有什麼瑕疵或者是什麼問題??? 還請板上的前輩可以多多給予批評 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.65.58
costbook:請參考中序式轉前序、後序...(資料結構) 10/18 17:27
cawae:抱歉 我不太了解你說的耶... 10/18 19:35
ducksteven:infix, prefix, postfix google 找一下吧 10/18 19:55
cawae:謝謝解說 非常感謝 10/18 20:12
slalala:好懷念 這是以前的作業之一XD 10/18 22:42
PsMonkey:她這個好像沒有先乘除後加減,不用資料結構吧? 10/19 08:06
xlk:假設使用者一定會正確輸入不太好 要是沒catch到程式不就炸了XD 10/19 19:28