列表

详情


JAVA22. 重写计算逻辑

描述

在父类Base中定义了计算方法calculate(),该方法用于计算两个数的乘积(X*Y)。请在子类Sub中重写该方法,将计算逻辑由乘法改为除法(X/Y)。注意,当分母为0时输出“Error”。

输入描述

两个整数

输出描述

两个整数的商(int类型,不考虑小数情况)

示例1

输入:

6 2

输出:

3

示例2

输入:

1 0

输出:

Error

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Java 解法, 执行用时: 28ms, 内存消耗: 10600KB, 提交时间: 2022-02-08

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Sub sub = new Sub(x, y);
            sub.calculate();
        }
    }

}

class Base {

    private int x;
    private int y;

    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    public void calculate() {
        System.out.println(getX() * getY());
    }

}

class Sub extends Base {
    private int x;
    private int y;
    
    public Sub(int x, int y){
       super(x,y);
    }

    //write your code here......
    public void calculate(){
        if(super.getY()==0){
            System.out.println("Error");
        }else {
            System.out.println(super.getX()/super.getY());
        }
    }

}

Java 解法, 执行用时: 28ms, 内存消耗: 10608KB, 提交时间: 2021-11-18

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Sub sub = new Sub(x, y);
            sub.calculate();
        }
    }

}

class Base {

    private int x;
    private int y;

    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    public void calculate() {
        System.out.println(getX() * getY());
    }

}

class Sub extends Base {

    //write your code here......
//     @override
      private int x;
      private int y;

      public Sub(int x, int y) {
        super(x,y);
    }
    public void calculate(){
        if(getY() == 0 ){
            System.out.println("Error");
        }else{
            
            System.out.println(getX()/getY());
        }
    }

}

Java 解法, 执行用时: 28ms, 内存消耗: 10692KB, 提交时间: 2022-02-09

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Sub sub = new Sub(x, y);
            sub.calculate();
        }
    }

}

class Base {

    private int x;
    private int y;

    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    public void calculate() {
        System.out.println(getX() * getY());
    }

}

class Sub extends Base {

    //write your code here......
    public Sub(int x,int y){
        super(x,y);
    }
      public void calculate(){
        if(getY() == 0) //除数为0
            System.out.println("Error");
        else
            System.out.println(getX() / getY());
    }

}

Java 解法, 执行用时: 29ms, 内存消耗: 10648KB, 提交时间: 2021-10-23

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Sub sub = new Sub(x, y);
            sub.calculate();
        }
    }

}

class Base {

    private int x;
    private int y;

    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    public void calculate() {
        if(getY() == 0){
            System.out.print("Error");
        }else{
            System.out.println(getX() / getY());
        }
    }

}

class Sub extends Base {

    //write your code here......
    public Sub(int x ,  int y){
        super(x,y);
    }
    
    
    
}

Java 解法, 执行用时: 30ms, 内存消耗: 10560KB, 提交时间: 2021-10-17

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Sub sub = new Sub(x,y);
            sub.calculate();
        }
    }

}

class Base {

    private int x;
    private int y;

    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

    public void calculate() {
        System.out.println(getX() * getY());
    }

}

class Sub extends Base {
public Sub(int x, int y) {
        super(x,y);
    }
    public void calculate() {
        if (getY()==0){
            System.out.println("Error");
        }else
            System.out.println(getX() / getY());
    }

}

上一题