㈠ 求解 java等差数列 问题!
public class ArithmeticSequence
{
public static void main( String args[] )
{
Scanner input = new Scanner ( System.in );
int a_1, d, N;
double a_n = 0.0, S_n = 0.0;
System.out.print ("Enter a_1:");
a_1 = input.nextInt();
System.out.print ("Enter d:");
d = input.nextInt();
System.out.print ("Enter N:");
N = input.nextInt();
for(int i = 0; i< N; i++)
{
a_n = a_1+ i*d;
S_n += a_n;
System.out.println("a_" + i+1 +"=" + a_n+
",S = " + S_n);
}
}
}
小弟也是初学java,如果有写的不对的地方,还请大家不吝赐教。。。
㈡ java 等差数列求和
public class ArithmeticProgression {
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 = 1; i <= n; i++) {
// 累加第i项,直到N
result += beg + (i-1) * d;
}
return result;
}
public static void main(String[] args) {
System.out.println(sum(1, 6, 1));
}
}
㈢ 如何用JAVA编写等差数列第一行为11个*号,第二行为9个*号,第三行为7个*号,最后一行1个*号
public class test {
public static void main(String[] args) {
for(int i=11;i>0;i-=2){
for(int j=0;j<i;j++){
System.out.print("*");
}
System.out.println();
}
}
}
***********
*********
*******
*****
***
*
㈣ JAVA 等差数列求数值问题,新手求JAVA帝帮忙,JAVA怎么求等差数列里面每个数的值
class sample {
public static void main(String args[]) {
int a, n;
for (a = 0; a < 30; a++) {
for (n = 0; n < 10; n++) {
if ((a + a - n + a - 2 * n + a - 3 * n == 26)
&& (a * (a - n) * (a - 2 * n) * (a - 3 * n) == 880)) {
System.out.println("a==" + a);
System.out.println("n==" + n);
}
}
}
}
}
a就是A,N就是差值 , 判断条件内的30,10自己定义个接近的就可以了
㈤ java如何进行等差数列求和
import java.util.Scanner;
public class test {
public static void main(String[] args) {
//创建Scanner对象 接受从控制台输入
Scanner input = new Scanner(System.in);
System.out.println("首项:");
//接受String型
String first = input.next();
System.out.println("尾项");
//接受String型
String last = input.next();
System.out.println("公差");
String gongcha = input.next();
int num = Math.abs((Integer.parseInt(first)-Integer.parseInt(last))/Integer.parseInt(gongcha))+1;
System.out.println("num="+num);
double total = 0.5*((Integer.parseInt(first)+Integer.parseInt(last))*num);
//输出结果
System.out.println("total:"+total); }
}
本机测试过可以运行
没看清要求,这个是用for循环的,可以负数啥的:
import java.util.Scanner;
public class az {
public static void main(String[] args) {
//创建Scanner对象 接受从控制台输入
Scanner input = new Scanner(System.in);
System.out.println("首项:");
//接受String型
String first = input.next();
int f = Integer.parseInt(first);
System.out.println("尾项");
//接受String型
String last = input.next();
int l = Integer.parseInt(last);
System.out.println("公差");
String gongcha = input.next();
int g = Integer.parseInt(gongcha);
g = Math.abs(g);
if(f>l){
int temp =f;
f = l;
l = temp;
}
double total = 0;
for(int i=f;i<=l;i+=g){
total += i;
i = i+g;
}
//输出结果
System.out.println("total:"+total);
}
}
㈥ 用java语言编写一个类,该类创建的对象可以计算等差数列的和,怎么做
class calculate
{
private int t,s;
public void calculate()
{
s=0;
}
/*
参数:数列开始,最后一位,增量
返回:int
*/
public int total(int first,int last,int increment)//increment为数列增量
{
if( ((last - first) / increment) % 1 ==0 ) //数列为等差时
{
for(int j=0;j<(last - first) / increment + 1;j++)
{
t = j*increment + first;
s = s + t;
}
}
return s;
}
}
//测试
class test4
{
public static void main(String args[])
{
calculate c = new calculate();//这里创建一个对象
System.out.println(c.total(1,9,4)); //这里调用C对象的total方法
}
}