栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

头歌面向对象程序设计(Java)实验(持续更新)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

头歌面向对象程序设计(Java)实验(持续更新)

实验一 Java编程基础 第1关:编写一个简单Java程序,计算银行年存款的本息
package step;
import java.util.Scanner;
public class OneClass{
  public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        double a = input.nextDouble();
        double b = input.nextDouble();
        int m = input.nextInt();
        Calculate(a,b,m);
    }
    public static double Calculate(double x,double y,int z) {
        System.out.println("本金:"+x);
        System.out.println("存款年限:"+z);
        System.out.println("利率:"+y);
        double temp = Math.pow(1+y,z)*x-x;
        System.out.println("利息:"+temp);
        temp += x;
        System.out.println("总额:"+temp);
        return temp;
    }

  
  
    
 
    
  
}
 第2关:编写程序完成矩阵的乘法运算
package step2;
class TwoClass{
    public static int[][] Matrix(int a[][], int b[][]) {
        
        if (a[0].length != b.length)
            return null;
        
        int y = a.length;
        int x = b[0].length;
        int c[][] = new int[y][x];
        for (int i = 0; i < y; i++)
            for (int j = 0; j < x; j++)
                
                for (int k = 0; k < b.length; k++)
                    c[i][j] += a[i][k] * b[k][j];
        return c;
    }


    
 
    
    
}

实验二 (Java)字符串 第1关:第一题 字符串的值转换成浮点型
package step1;

public class DoubleConverter {
	public boolean check(String value) {
		int len = value.length();
		int flag = 1;
		for(int i = 0;i < len;i++)
		{
			if(value.charAt(i) == '.'||value.charAt(i) == '+'||value.charAt(i) == '-')continue;
			else if((value.charAt(i) < '0'||value.charAt(i) > '9')) {
				flag  = 0;
				break;
			}
		}
		if(flag == 1) {
			return true;
		}
		else return false;
		
	}
	public double convert(String value) {
		if(check(value)) {
			double num = 0.0;
			int flag1 = 1;
			int flag2 = 1;
			int vim = 0;
			for(int i = 0;i < value.length();i++) {
				if(value.charAt(i) == '-') {
					flag1 = 0;continue;
				}
				else if(value.charAt(i) == '+')
				{
					flag1 = 1; continue;
				}
				if(value.charAt(i) == '.') {
					flag2 = 0;
					vim = i;
					continue;
				}
				if(flag2 == 0) {
					num += (value.charAt(i)-'0')*Math.pow(10,vim-i);
				}
				else {
					num = num*10+(value.charAt(i)-'0');
				}
			}
			if(num!=0) {
				if(flag1 == 0) {
					num *= -1.0;
				}
			}
			return num;
		}
		else return 0.0;
	}
	
}

第2关:第二题 字符转换
package step2;
public class Converter {
	public String convert(String value) {
		int flag = 0;
		StringBuilder strBuilder = new StringBuilder(value);
		for(int i = 0;i < strBuilder.length();i++) {
			if(strBuilder.charAt(i) == ' ') {
				flag = 0;
				continue;
			}
			if(flag == 0) {
				if(strBuilder.charAt(i) >= 'a'&&strBuilder.charAt(i) <= 'z') {
					char c = strBuilder.charAt(i);
					c -= 32;
				    strBuilder.setCharAt(i,c);
				    flag = 1;
				}
				else flag = 1;
			}
			else if(flag == 1) {
				if(strBuilder.charAt(i) >= 'A'&&strBuilder.charAt(i) <= 'Z') {
					char c = strBuilder.charAt(i);
					c += 32;
				    strBuilder.setCharAt(i,c);
				    flag = 1;
				}
			}
		}
		value = strBuilder.toString();
		//System.out.println(value);
		return value;
	}
}
实验三 (Java)面向对象编程 第1关:第一题:编写一个计算各种形状的面积和周长的程序

第一关共五部分代码:

第一部分:

package step1;
public abstract class Shape2D{
    //在这完成Shape2D类的程序的编写
public abstract double getArea();
public abstract double getL();  
    
    
    
}

第二部分:

package step1;
//在这完成Circle类的编写
public class Circle extends Shape2D{
    private double r;
    public Circle(){}
    public  Circle(double r){
        this.r=r;
    }

    
    public double getArea(){
        return Math.PI*r*r;
    }

    public double getL(){
        return 2*Math.PI*r;
    }
}

第三部分:

package step1;
//在这完成Triangle类的编写
public class Triangle extends Shape2D{

    private double a;
    private double b;
    private double c;

    public Triangle(){}
    
    public  Triangle(double a,double b,double c){
      this.a=a;
      this.b=b;
      this.c=c;
    }

    public double getArea(){
        double p=(a+b+c)/2.0;
        if(a+b<=c||a+c<=b||b+c<=a) 
        return -1;
        else 
        {double s=Math.sqrt(p*(p-a)*(p-b)*(p-c));
        return s;
        }
        
    }

    
    public double getL(){
        return a+b+c;
    }
} 

第四部分:

package step1;
//在这完成Rectangle类的编写
public class Rectangle extends Shape2D{
    private double a;
    private double b;

    public Rectangle(){}
    
    public  Rectangle(double a,double b){
        this.a=a;
        this.b=b;
    }

    
    public double getArea(){
        return a*b;
    }

    
    public double getL(){
        return 2*(a+b);
    }
}

第五部分:

package step1;
//在这完成Square类的编写
public class Square extends Rectangle{

    private double a;

    public Square(){}

    public  Square(double a){
        this.a=a;
    }
    

    
    public double getArea(){
        return a*a;
    }

    
    public double getL(){
        return 4*a;
    }
    
}

第2关:第二题 (Java)类

第二关共三部分代码:

 第一部分:

package step2;
//在这些Class类
import java.util.Arrays;
class Class{

    private String name;
    private int num;
    private Student[] stu;
    private int count=0;

    public Class(int num,String name){
        this.num=num;
        this.name=name;
        this.stu=new Student[num];
    }

    public void addStudent(Student stu){
        if(stu instanceof Student){
            this.stu[count]=stu;
            count++;
        }
    }

    public int GetStudentNum(){
        return num;
    }

    public Student GetStudent(int index){
        return this.stu[index];
    }

    public String toString(){
        return  "Class{"+"name:" + name  +" number:" + num +" students:" + Arrays.toString(stu) +"}";
    }



}

第二部分:

package step2;
//在这儿些Student类
import java.util.Arrays;
class Student{
    private int id;
    private String name;
    private int nCourse;
    private Course[] course;
    private int count=0;

    public  Student(int id,String name,int nCourse){
        this.id=id;
        this.name=name;
        this.nCourse=nCourse;
        this.course=new Course[nCourse];
    }

    public void addCourse(Course course){
        if(course instanceof Course){
            this.course[count]=course;
            count++;
        }
        else return;
    }

    public int GetCourseNum(){
        return nCourse;
    }

    public Course GetCourse(int index){
        return this.course[index];
    }

    public int calculateAvgGrade(){
        int sum=0;
        int countCourse=0;
        for(int count=0;count 

第三部分:

package step2;
//在这些Course类
import java.util.Arrays;
class Course{
    private int id;
    private String name;
    private int credit;
    private int cj;
    private boolean hk;

    public Course(int id,String name,int credit){
        this.id=id;
        this.name=name;
        this.credit=credit;
    }   

    public void sethk(boolean hk){
        this.hk=hk;
    }

    public boolean gethk(){
        return hk;
    }

    public void setcj(int cj){
        this.cj=cj;
    }

    public int getcj(){
        return cj;
    }

    public int getCredit(){
        return credit;
    }

    public String toString(){
        return "Course{" + " id:" + id +" name:" + name  +" credit:" + credit +" cj:" + cj + " hk:" + hk +"}";
    }


}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/355833.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号