实验一 Java编程基础

实验一 Java编程基础

基本操作性 验证性 实验      1学时)

1、目的要求:

(1.掌握配置Java运行环境。

(2.学会编写简单的Java程序。

(3.学会使用命令行方式编译、运行Java程序。

(4.掌握使用Eclipse集成开发环境下编译、调试和运行Java程序

2、实验内容:

(1。编写一个简单Java程序,计算银行年存款的本息。

要求:程序运行后要求用户输入存款本金、年利率和存款年限,最后程序计算并输出相应年限后存款的金额。相应的计算公式为:存款总额=本金 * (1 + 利率)存款年限。

提示:请检测用户输入的合法性。可以使用Math类来进行次方的运算:Math.pow(底数,指数)。

package lianxi1;


import java.util.Scanner;


public class shiyan1 {

       public static void main(String []args) {

              double x = 0.0;

              double y = 0.0;

              int z = 0;

       Scannerinput = new Scanner(System.in);

       System.out.println("请分别输入double double int:");

       while(input.hasNext()){

       if(input.hasNextDouble()){

              //判断输入的是否是double

              x = input.nextDouble();//接受输入

       }

       else{

              //输入错误信息

              System.out.println("输入格式不正确!");

       }

       if(input.hasNextDouble()){

              //判断输入的是否是double

              y = input.nextDouble();//接受输入

       }

       else{

              //输入错误信息

              System.out.println("输入格式不正确!");

       }

       if(input.hasNextInt()){

              //判断输入的是否是Int

              z = input.nextInt();//接受输入

       }

       else{

              //输入错误信息

              System.out.println("输入格式不正确!");

       }

       System.out.println("输入完全正确,正在计算...");

       qwer(x, y, z);

       }

       input.close();

 }

       public static void qwer(double a,double b,int c){

              Doublet= Math.pow((1+b), c);

              System.out.println("存款总额=" + a * t);

       }

}

运行结果

(2.编写程序完成矩阵的乘法运算。

要求:程序运行后要求用户分别输入两个矩阵的行数和列数,然后判断两个矩阵是否可以相乘,如果可以相乘,则计算矩阵相乘后的结果,并按矩阵的格式输出;若不能相乘,则提示用户矩阵不相容,并退出程序。

提示:一个2行3列的矩阵可以用一个二维数组表示:int matrixA[2][3]。此外,必须要知道什么是矩阵相乘。矩阵相乘的概念如下图所示:


2

package lianxi1;

import java.util.Scanner;

public class shiyan1 {

       public static void main(String []args) {

              int x, y,n,m;

       Scannerinput = new Scanner(System.in);

       System.out.println("请分别输入4个int型(空格隔开):");

       while(input.hasNext()){

               x = input.nextInt();

               y = input.nextInt();

               n = input.nextInt();

               m = input.nextInt();

                     int a[][]= new int[x][y];

                     int b[][]= new int[n][m];

                     if(x!=m||y!=n)

                     {

                            System.out.println("矩阵不符合!请重新输入4个int型(空格隔开):");

                            continue;

                     }

              juzhen(x, y, n, m,a,b);

 }

       input.close();

       }


       public static void juzhen(int a,int b,int c,int d,int[][] q,int[][] p){

              System.out.println("输入第一个矩阵的值");

              Scannerinput = new Scanner(System.in);

              for(int i=0;i<a;i++){

                     for(int j=0;j<b;j++){

                            q[i][j] =input.nextInt();

                     }

              }

              System.out.println("输入第二个矩阵的值");

              for(int i=0;i<c;i++){

                     for(int j=0;j<d;j++){

                            p[i][j] =input.nextInt();

                     }

              }

              input.close();

              System.out.println("输入成功正在计算...");

              int s =0;

              int[][]map = new int[a][d];

              for (int i = 0; i< a; i++)

              {

              for (int m = 0; m< d; m++)

              {

              for (int j = 0; j< b; j++)

              {

               s = s + q[i][j] * p[j][m];

              }

              map[i][m] =s;

              s =

0;

              }

              }

              for(int i=0;i<a;i++)

              {

                     for(int j=0;j<d;j++)

                     {

                            System.out.print(map[i][j] + "

");

                     }

                     System.out.print("\n");

              }

       }

}

运行结果

(3.编写程序用*号输出等腰梯形。

要求:程序运行后要求用户输入梯形的上边长度(*号的数量),然后输入梯形的层数。梯形的每一层比上一层左右边各多一个*号,程序输出梯形的形状。

例如:当用户输入3和4,则程序应该输出:

样例

package lianxi1;

import java.util.Scanner;

public class shiyan1 {

         public static void main(String []args) {

                   int x, y;

         Scannerinput = new Scanner(System.in);

         System.out.println("请分别输入梯形上边长和高:");

         while(input.hasNext()){

                   x = input.nextInt();

                   y = input.nextInt();

                   tixing(x, y);

 }

         input.close();

         }


         public static void tixing(int a,int b){

                   int t=0;

         for(int i=b;i>0;i--)

         {

                   for(int p=0;p<i;p++)

                   {

                            System.out.print("

");

                   }

                   for(int j=0;j<a+2*t;j++)

                   {

                            System.out.print("*");

                   }

                   for(int k=0;k<i;k++)

                   {

                            System.out.print("

");

                   }

                   System.out.print("\n");

                   t++;

         }

}

}

运行结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容