在Java编程中,如何求n个数字的和?
以下示例演示了如何使用堆栈的概念来将n个自然数相加求和。
package com.yiibai; import java.io.IOException; public class SummationOfNumbers { static int num; static int ans; static Stack theStack; public static void main(String[] args) throws IOException { num = 10; stackAddition(); System.out.println("Sum=" + ans); } public static void stackAddition() { theStack = new Stack(10000); ans = 0; while (num > 0) { theStack.push(num); --num; } while (!theStack.isEmpty()) { int newN = theStack.pop(); ans += newN; } } } class Stack { private int maxSize; private int[] data; private int top; public Stack(int s) { maxSize = s; data = new int[maxSize]; top = -1; } public void push(int p) { data[++top] = p; } public int pop() { return data[top--]; } public int peek() { return data[top]; } public boolean isEmpty() { return (top == -1); } }
上述代码示例将产生以下结果 –
Sum=55
示例-2
以下是求n个自然数之和的另一个例子
package com.yiibai; public class SummationOfNumbers2 { public static void main(String[] args) { int sum = 0; int n = 10; for (int i = 1; i <= n; i++) { sum = sum + i; } System.out.println("The Sum Of " + n + " is : " + sum); } }
上述代码示例将产生以下结果 –
The Sum Of 10 is : 55
¥ 我要打赏 纠错/补充 收藏