मैं एक कैलकुलेटर है जो कई कार्यों के लिए अनुमति देता है (उदाहरण के लिए 4 + 3-2 + 5) बनाने की कोशिश कर रहा हूँ। ऐसा करने के तरीके के लिए मेरा मूल विचार यह पाश का उपयोग करना है:
for (int i = 0; i < nums.length; i++) {
switch (nums[i]) {
case add:
while (func.size() < i) {
func.add(0);
}
func.add(i, 1);
type = +;
break;
//More cases for other operations
युगल नोट: nums.length संदर्भ एक सरणी जो इस तरह इनपुट समीकरण विभाजन में शामिल हैं: nums = equation.split((?<=[-+*/%])|(?=[-+*/%]))
आदर्श रूप में, एक बार मैं 'प्रकार' मान है, मैं सक्षम मेरा कार्यक्रम ऐसा करके समीकरण की गणना करने के लिए होगा:
for(int i = 1; i < nums.length; i++) {
ans = eq.get(0) type eq.get(func.indexOf(1)+i);
}
एक और छोटी ध्यान दें: eq
सभी के मूल्यों के साथ एक ArrayList है nums
।
काफी है कि मैं क्या कर रहा है क्या करना चाहते हैं type
जैसे +, गणित संचालन बन -, आदि मैं जानता हूँ कि इस कोड को बहुत तरह से मैं यह यहां जो दिखाया है में टूट गया है, लेकिन यह सिर्फ कुछ मैं जल्दी का एक उदाहरण प्रदान करने के लिए लिखा था क्या मैं पूरा करने के लिए चाहते हैं। मैं इस जहां समाधान का उपयोग करने के लिए था के लिए इसी तरह अन्य प्रश्न देखा है Math
कि से वर्ग और कॉल काम करता है, लेकिन यह मेरी कार्यक्रम में काम नहीं करता। किसी को भी एक तरह से पर विचार इस लक्ष्य को हासिल करने के लिए है? धन्यवाद!