从0开始学java(3.5)练习

练习题都给好过了:实现斐波那契数列(打印前20位并求和)
矩阵转置(一个二维数组看作矩阵,作转置操作)


image.png

现在自己尝试写一下吧,之后我给参考答案。

参考1:结合数组

package 新生教学1;

public class Fibonacci {
public static void main(String[] args) {
    int[] fib=new int[20];
    int sum=0;
    FIB(fib);
    for(int f:fib) {
        System.out.println(f);
        sum+=f;
    }
    System.out.println("和为:"+sum);
}
private static void FIB(int[] fib) {
    fib[0]=1;
    fib[1]=1;
    for(int i=2;i<20;i++) {
        fib[i]=fib[i-1]+fib[i-2];
    }
}
}

参考2:不使用数组

package 新生教学1;
public class Fibonacci2 {
public static void main(String[] args) {
    int a=1;
    System.out.println(a);
    int b=1;
    System.out.println(b);
    int sum=a+b;
    for(int i = 0;i <9;i++) {       
        a = a + b;
        System.out.println(a);
        b = a + b;      
        System.out.println(b);
        sum+=(a+b);
    }
        System.out.println("和为"+sum);
}
} 

矩阵转置:

package 新生教学1;

public class 矩阵转置 {
public static void main(String[] args) {
    String [][] s = new String[2][3];
    s[0][0] = "a";
    s[0][1] = "b";
    s[0][2] = "c";
    s[1][0] = new String("d");
    s[1][1] = new String("e");
    s[1][2] = new String("f");
    String [][] sz = new String[3][2];
    for(int i=0;i<2;i++)
        for(int j=0;j<3;j++)
        sz[j][i]=s[i][j];
    for(String[] sout:sz) {
        for(String sin:sout) {
            System.out.println(sin);
        }
    }
}
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容