Java程序:求前N个奇数和偶数的和
在本文中,我们将编写一个 Java 程序来求前 n 个奇数和偶数的和。根据一个数除以 2 是否余 0 或 1,可以将其分为两类。**奇数**是指不能被 2 整除的数,或者说这些数除以 2 余 1。换句话说,可以用 **‘2n+1’** 的形式表示。偶数是指能被 2 整除的数,即这些数除以 2 余 0。换句话说,可以用 **‘2n’** 的形式表示。
示例
Input: n = 5 Output: Sum of first 5 Odd Numbers is: 25 Sum of first 5 Even Numbers is: 30
说明:输入为 5,前 5 个奇数为 1, 3, 5, 7, 9,和为 1+3+5+7+9 = 25;前 5 个偶数为 2, 4, 6, 8, 10,和为 2+4+6+8+10 = 30。
Input: n = 7 Output: Sum of first 5 Odd Numbers is: 49 Sum of first 5 Even Numbers is: 56
说明:输入为 5,前 5 个奇数为 1, 3, 5, 7, 9, 11, 13,和为 1+3+5+7+9+11+13 = 49;前 5 个偶数为 2, 4, 6, 8, 10, 12, 14,和为 2+4+6+8+10+12+14 = 56。
我们将讨论两种不同的方法来求 n 个奇数和 n 个偶数的和。
方法一:使用 for 循环
在这种方法中,我们将使用 Java for 循环来求 n 个奇数和 n 个偶数的和。我们将遵循以下步骤:
初始化一个整数 n。
使用 for 循环,不断添加奇数和偶数,直到条件为假,然后打印和。
for 循环是 Java 中的一种迭代语句,它执行代码直到条件失败。
语法
以下是 for 循环的语法:
for (initialization; condition; updation) { // code }
**初始化** - 我们需要用一个值初始化循环,并且只执行一次。
**条件** - 我们需要指定一个条件,该条件指定循环将执行多少次。循环将执行直到此条件为真。
**更新** - 我们需要指定循环应该递增的值。它更新循环的初始化值。
示例
在下面的示例中,我们使用 for 循环,它从 i = 1 迭代到 2 * n,这样我们将以 2 为增量并添加值到 **oddSum** 变量中,得到奇数的和。现在,编写另一个循环,此循环从 i = 2 迭代到 2*n,我们每次递增 2 并将值添加到 **evenSum** 变量中,得到偶数的和。因此,我们最终打印 oddSum 和 evenSum。
import java.util.*; public class Main { public static void main(String[] args) { int n = 5; int oddSum = 0; for (int i = 1; i <= 2 * n; i += 2) { oddSum += i; } int evenSum = 0; for (int i = 2; i <= 2 * n; i += 2) { evenSum += i; } System.out.println("Sum of first " + n + " Odd Numbers is: " + oddSum); System.out.println("Sum of first " + n + " Even Numbers is: " + evenSum); } }
输出
Sum of first 5 Odd Numbers is: 25 Sum of first 5 Even Numbers is: 30
时间复杂度:O(2*N) 辅助空间:O(1)
方法二:使用公式
在这种方法中,我们将使用等差数列公式来求 n 个偶数和奇数的和。
公式
Sum of first n even numbers= n * (n+1) Sum of first n odd numbers= n*n
图示
Let us consider n = 4; First 4 even numbers are 2,4,6,8. Using formula ⇒ 4(4+1) = 4*5= 20 So the sum of first four even numbers is 2+4+6+8 = 20. First 4 odd numbers are 1,3,5,7. So sum of first four odd numbers is 1+3+5+7=16 Using formula ⇒ 4*4=16
算法
初始化一个整数 n。
用零初始化两个变量 oddSum 和 evenSum。
现在,使用公式求出 oddSum 和 evenSum。
打印 oddSum 和 evenSum
示例
在下面的示例中,我们使用公式来求前 N 个奇数和偶数的和。我们定义两个变量 oddSum 和 evenSum,并分别将值存储到这些变量中。最后,我们打印 oddSum 和 evenSum。
import java.util.*; public class Main { public static void main(String[] args) { int n = 5; int oddSum = n * n; int evenSum = n * (n + 1); System.out.println("Sum of first " + n + " Odd Numbers: " + oddSum); System.out.println("Sum of first " + n + " Even Numbers: " + evenSum); } }
输出
Sum of first 5 Odd Numbers: 25 Sum of first 5 Even Numbers: 30
时间复杂度:O(1) 辅助空间:O(1)
因此,在本文中,我们讨论了如何打印前 n 个奇数和偶数之和的不同方法。