public static int sum(int beg, int end, int d) {
// 参数校验
if (0 == d) {
throw new IllegalArgumentException("公差0没意义啊!")
}
// 两者的差
int m = end - beg
if (m <0 || d <0) {
throw new IllegalArgumentException("暂不支谨轮宏持负数公差!")
}
// 末项和首项的差不能被公差整出
if ((end - beg) % d != 0) {
throw new IllegalArgumentException("末项和首项的差不能祥册被公差整除!")
}
// beg为第一项的话end为第n项
int n = (end - beg) / d + 1
// 公式和=(首项+末项)×项数÷2 不用for的话可以直接得桐局结果
// return (beg + end) * n / 2
int result = 0
for (int i = 1i <= ni++) {
// 累加第i项,直到N
result += beg + (i-1) * d
}
return result
}
public static void main(String[] args) {
System.out.println(sum(1, 6, 1))
}
}
下面是代码和截图,有什么问题的话欢迎继续提问。
public class Task1 {
double i
double sum
public Task1(){
sum=0
for(i=0i<10i++){
if(i%2==0){
sum+=1/(2*i+1)
System.out.print(1 + "/" +(2*i+1)+"-")
}
else
sum-=1/(2*i+1)
if(i!=9)
System.out.print(1 + "/" +(2*i+1+"+"))
else
System.out.print(1 + "/" +(2*i+1))
}
System.out.printf("=%.2f\n",sum)
}
public static void main(String[] args){
Task1 mytask1 = new Task1()
}
}
import java.util.Scanner
public class Task2 {
int first//等差数列的第一个数培前
int n//有n个数
int d
int sum
public Task2(){
Scanner in = new Scanner(System.in)
System.out.println("请输入等差数列的第一个数:")
first=in.nextInt()
System.out.println("请输入等配游清差数列数的个数:")
n=in.nextInt()
System.out.println("请输入等差数列的差:")
d=in.nextInt()
sum=(first+first+(n-1)*d)*n/2
System.out.printf("等差数列的和为:%d\n",sum)
}
public static void main(String[] args) {
磨姿 Task2 myTask2 = new Task2()
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)