目录

1.倍数

2.零食

3.区间

4.三角形

5.游戏时间

6.加薪

7.动物

8.选择练习1

9.DDD

10.点的坐标

11.三角形类型

12.游戏时间2

13.税

14.简单排序

15.一元二次方程公式

16.平均数3


1.倍数

读取两个正整数值 AB

如果其中一个是另一个的整数倍,则输出 Sao Multiplos,否则输出 Nao sao Multiplos

输入格式

共一行,两个整数 AB

输出格式

按题目所述,输出结果。

数据范围

0 < A, B < 100

输入样例:

6 24

输出样例:

Sao

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int B = sc.nextInt();
        if (A % B == 0 || B % A == 0)
            System.out.println("Sao Multiplos");
        else
            System.out.println("Nao sao Multiplos");
    }
}

2.零食

某商店出售 5 种零食,零食编号为 1∼5 。

5 种零食的价目表如下所示:

零食种类        价格
零食  1         R$ 4.00
零食  2         R$ 4.50
零食  3         R$ 5.00
零食  4         R$ 2.00
零食  5         R$ 1.50

现在给定某种零食的编号和数量,请你计算总价值是多少。

输入格式

输入包含两个整数 x 和 y,其中 x 为零食编号,y 为零食数量。

输出格式

输出格式为 Total: R$ X ,其中 X 为总价值,保留两位小数。

数据范围

1 ≤ x ≤ 5,
1 ≤ y ≤ 100

输入样例:

3 2

输出样例:

Total: R$ 10.00

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int N = sc.nextInt();
        double ls[] = { 4.00, 4.50, 5.00, 2.00, 1.50 };
        double x = ls[A - 1] * N;
        System.out.printf("Total: R$ %.2f", x);
    }
}

3.区间

给定一个浮点数,请你判断该数字属于以下哪个区间:[0,25],(25,50],(50,75],(75,100]。

如果给定的数值小于 0 或大于 100,则程序输出 Fora de intervalo

开区间 (a,b) :在实数 a 和实数 b 之间的所有实数,但不包含 a 和 b。

闭区间 [a,b] :在实数 a 和实数 b 之间的所有实数,包含 a 和 b。

输入格式

输入一个浮点数。

输出格式

判断输入数值位于哪个区间,按格式 Intervalo x 输出,其中 x 为区间范围
[0,25],(25,50],(50,75],(75,100] 中的一个。

如果数值位于所有区间之外,则输出 Fora de intervalo

输入样例:

25.01

输出样例:

Intervalo (25,50]

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double A = sc.nextDouble();
        if (0 <= A && A <= 25)
            System.out.println("Intervalo [0,25]");
        else if (25 < A && A <= 50)
            System.out.println("Intervalo (25,50]");
        else if (50 < A && A <= 75)
            System.out.println("Intervalo (50,75]");
        else if (75 < A && A <= 100)
            System.out.println("Intervalo (75,100]");
        else
            System.out.println("Fora de intervalo");
    }
}

4.三角形

读取三个浮点数 ABC 并验证是否可以用它们形成三角形。

如果可能,则计算并输出三角形的周长: Perimetro = XX.X

如果不可能,则计算并输出以 AB 为底以 C 为高的梯形面积:Area = XX.X

输入格式

共一行,包含三个浮点数 A, B, C

输出格式

按题目描述格式,输出答案,答案保留一位小数。

数据范围

0 < A, B, C < 100.0

输入样例1:

6.0 4.0 2.0

输出样例1:

Area

输入样例2:

6.0 4.0 2.1

输出样例2:

Perimetro

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double A = sc.nextDouble();
        double B = sc.nextDouble();
        double C = sc.nextDouble();
        if (A + B > C && A + C > B && B + C > A) {
            double c = A + B + C;
            System.out.printf("Perimetro = %.1f", c);
        } else {
            double s = (A + B) * C / 2.0;
            System.out.printf("Area = %.1f", s);
        }
    }
}

5.游戏时间

读取两个整数 AB ,表示游戏的开始时间和结束时间,以小时为单位。

然后请你计算游戏的持续时间,已知游戏可以在一天开始并在另一天结束,最长持续时间为 24

小时。

如果 AB 相等,则视为持续了 24 小时。

输入格式

共一行,包含两个整数 AB

输出格式

输出格式为 O JOGO DUROU X HORA(S),其中 X 为游戏持续时间。

数据范围

0 ≤ A, B ≤ 23

输入样例1:

16 2

输出样例1:

O

输入样例2:

0 0

输出样例2:

O

输入样例3:

2 16

输出样例3:

O

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int B = sc.nextInt();
        int X;
        if (A == B)
            X = 24;
        else if (A > B)
            X = 24 - A + B;
        else
            X = B - A;
        System.out.print("O JOGO DUROU " + X + " HORA(S)");
    }
}

6.加薪

ABC 公司决定给员工加薪,加薪情况如下所示:

    薪水                             涨薪幅度
0 - 400.00                            15%
400.01 - 800.00                   12%
800.01 - 1200.00                 10%
1200.01 - 2000.00                7%
超过 2000.00                        4%

读取员工的工资,计算并输出员工的新工资,以及员工增加的收入和涨薪幅度。

输入格式

共一行,包含一个保留两位小数的浮点数。

输出格式

输出格式如下所示:

第一行输出 Novo salario: X

第二行输出 Reajuste ganho: Y

第三行输出 Em percentual: Z

数据范围

0 ≤ 原工资 ≤ 2500.00

输入样例:

400.00

输出样例:

Novo salario: 460.00
Reajuste ganho: 60.00
Em percentual: 15 %

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double A = sc.nextDouble();
        double X = 0;
        String Z = "";
        if (0 <= A && A <= 400.00) {
            X = A * 1.15;
            Z = "15 %";
        } else if (400.01 <= A && A <= 800.00) {
            X = A * 1.12;
            Z = "12 %";
        } else if (800.01 <= A && A <= 1200.00) {
            X = A * 1.10;
            Z = "10 %";
        } else if (1200.01 <= A && A <= 2000.00) {
            X = A * 1.07;
            Z = "7 %";
        } else if (2000.00 < A) {
            X = A * 1.04;
            Z = "4 %";
        }
        System.out.printf("Novo salario: %.2f\n", X);
        System.out.printf("Reajuste ganho: %.2f\n", X - A);
        System.out.print("Em percentual: " + Z);
    }
}

7.动物

给定你三个葡萄牙语单词,这些词将根据下表从左到右定义一个动物。

请你确定并输出这个动物的名称。

java 判断是否excel java并且判断_输出格式

输入格式

根据上表,输入包含三个单词,每行一个,用以识别动物,单词由小写字母构成。

输出格式

输出识别出的动物的名称。

输入样例:

vertebrado
mamifero
onivoro

输出样例:

homem

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        String A = sc.next();
        String B = sc.next();
        String C = sc.next();
        String S = "" + A.charAt(0) + B.charAt(0) + C.charAt(0);
        if (S.equals("vac")) System.out.print("aguia");
        else if (S.equals("vao")) System.out.print("pomba");
        else if (S.equals("vmo")) System.out.print("homem");
        else if (S.equals("vmh")) System.out.print("vaca");
        else if (S.equals("iih") && C.charAt(2) == 'm') System.out.print("pulga");
        else if (S.equals("iih") && C.charAt(2) == 'r') System.out.print("lagarta");
        else if (S.equals("iah")) System.out.print("sanguessuga");
        else if (S.equals("iao")) System.out.print("minhoca");
    }
}

8.选择练习1

读取 4 个整数值 ABCD

如果四个整数同时满足以下条件:

  1. B 大于 C
  2. D 大于 A
  3. CD 的总和大于 AB 的总和。
  4. CD 是正值。
  5. A 是偶数。

则输出 Valores aceitos,否则,输出 Valores nao aceitos

输入格式

输入占一行,包含四个整数 A,B,C,D

输出格式

如果输入数值满足题目条件则输出 Valores aceitos,否则输出 Valores nao aceitos

数据范围

−100 ≤ A, B, C, D ≤ 100

输入样例:

5 6 7 8

输出样例:

Valores

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int B = sc.nextInt();
        int C = sc.nextInt();
        int D = sc.nextInt();
        if (B > C && D > A && C + D > A + B && C > 0 && D > 0 && A % 2 == 0) System.out.print("Valores aceitos");
        else System.out.print("Valores nao aceitos");
    }
}

9.DDD

给定一个整数,请根据下表确定并输出其对应的城市名称:

java 判断是否excel java并且判断_java_02

 如果输入数字不在上表中,则输出 DDD nao cadastrado

输入格式

共一行,包含一个整数。

输出格式

输出对应城市名称,如果没有对应城市名称,则输出 DDD nao cadastrado

输入样例:

11

输出样例:

Sao

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        if (A == 61) System.out.print("Brasilia");
        else if (A == 71) System.out.print("Salvador");
        else if (A == 11) System.out.print("Sao Paulo");
        else if (A == 21) System.out.print("Rio de Janeiro");
        else if (A == 32) System.out.print("Juiz de Fora");
        else if (A == 19) System.out.print("Campinas");
        else if (A == 27) System.out.print("Vitoria");
        else if (A == 31) System.out.print("Belo Horizonte");
        else System.out.print("DDD nao cadastrado");
    }
}

10.点的坐标

给定两个保留一位小数的浮点数 X,Y,用来表示一个点的横纵坐标。

请你判断该点在坐标系中的位置。

java 判断是否excel java并且判断_java 判断是否excel_03

输入格式

共一行,包含两个浮点数 X,Y,表示点的横纵坐标。

输出格式

如果点在第一象限,则输出 Q1 ,在第二象限,则输出 Q2

如果点在原点处,则输出 Origem

否则,如果点在 x 坐标上,则输出 Eixo X ,在 y 坐标上,则输出 Eixo Y

数据范围

−10.0 ≤ X,Y ≤ 10.0

输入样例1:

4.5 -2.2

输出样例1:

Q4

输入样例2:

0.0 0.0

输出样例2:

Origem

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double X = sc.nextDouble();
        double Y = sc.nextDouble();
        if (X==0 && Y==0) System.out.print("Origem");
        else if (X>0 && Y>0) System.out.print("Q1");
        else if (X<0 && Y>0) System.out.print("Q2");
        else if (X<0 && Y<0) System.out.print("Q3");
        else if (X>0 && Y<0) System.out.print("Q4");
        else if (X==0 && Y!=0) System.out.print("Eixo Y");
        else if (X!=0 && Y==0) System.out.print("Eixo X");
    }
}

11.三角形类型

读取表示三角形三条边的 3 个浮点数 A,B 和 C 并按降序排列,使 A 边是三边中最大的一边。

接下来,根据以下情况,确定它们可以组成的三角形类型:

  • 如果 A≥B+C,则说明三条边不能构成三角形,请输出:NAO FORMA TRIANGULO
  • 否则,说明三条边可以构成三角形,然后按如下情况输出:
  • 如果=+,请输出:TRIANGULO RETANGULO
  • 如果>+,请输出:TRIANGULO OBTUSANGULO
  • 如果<+,请输出:TRIANGULO ACUTANGULO
  • 如果三个边长度都相同,请输出:TRIANGULO EQUILATERO
  • 如果只有两个边长度相同而第三个边长度不同,请输出:TRIANGULO ISOSCELES

输入格式

共一行,包含三个浮点数 A,B,C。

输出格式

输出 A,B,C 组成的三角形的类型。

注意,上述条件可能满足不止一条,这种情况下将所有类型名称,按题目介绍顺序输出,每行输出一条。

数据范围

0 < A, B, C ≤ 10.0

输入样例:

7.0 5.0 7.0

输出样例:

TRIANGULO ACUTANGULO
TRIANGULO ISOSCELES

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double A = sc.nextDouble();
        double B = sc.nextDouble();
        double C = sc.nextDouble();
        double t;
        if (B > A) {
            t = A;
            A = B;
            B = t;
        }
        if (C > B) {
            t = B;
            B = C;
            C = t;
        }
        if (B > A) {
            t = A;
            A = B;
            B = t;
        }
        if (A >= B + C) System.out.print("NAO FORMA TRIANGULO");
        else if (A * A == B * B + C * C) System.out.println("TRIANGULO RETANGULO");
        else if (A * A > B * B + C * C) System.out.println("TRIANGULO OBTUSANGULO");
        else if (A * A < B * B + C * C) System.out.println("TRIANGULO ACUTANGULO");
        if (A == B && B == C) System.out.println("TRIANGULO EQUILATERO");
        else if (A == B || B == C || A == C) System.out.print("TRIANGULO ISOSCELES");
    }
}

12.游戏时间2

读取四个整数 A,B,C,D,用来表示游戏的开始时间和结束时间。

其中 A 和 B 为开始时刻的小时和分钟数,C 和 D 为结束时刻的小时和分钟数。

请你计算游戏的持续时间。

比赛最短持续 1 分钟,最长持续 24 小时。

输入格式

共一行,包含四个整数 A,B,C,D。

输出格式

输出格式为 O JOGO DUROU X HORA(S) E Y MINUTO(S),表示游戏共持续了 X 小时 Y 分钟。

数据范围

0 ≤ A,C ≤ 23,
0 ≤ B,D ≤ 59

输入样例1:

7 8 9 10

输出样例1:

O JOGO DUROU 2 HORA(S) E 2 MINUTO(S)

输入样例2:

7 7 7 7

输出样例2:

O JOGO DUROU 24 HORA(S) E 0 MINUTO(S)

输入样例3:

7 10 8 9

输出样例3:

O JOGO DUROU 0 HORA(S) E 59 MINUTO(S)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int B = sc.nextInt();
        int C = sc.nextInt();
        int D = sc.nextInt();
        int X = 0, Y = 0;
        if (A == C) {
            if (B == D) {
                X = 24;
                Y = 0;
            } else if (B > D) {
                X = 23;
                Y = 60 - B + D;
            } else if (B < D) {
                X = 0;
                Y = D - B;
            }
        } else if (A > C) {
            X = 24 - A + C;
            if (B <= D) {
                Y = D - B;
            } else if (B > D) {
                X -= 1;
                Y = 60 - B + D;
            }
        } else if (A < C) {
            if (B <= D) {
                X = C - A;
                Y = D - B;
            } else if (B > D) {
                X = C - A - 1;
                Y = 60 - B + D;
            }
        }
        System.out.print("O JOGO DUROU " + X + " HORA(S) E " + Y + " MINUTO(S)");
    }
}

13.税

读取一个保留两位小数的浮点数值,表示一个公民的工资。

在公民缴纳个人所得税时,不同收入部分需要缴税的税率也是不同的。

请根据下表确定该公民需要缴纳的个人所得税是多少。

java 判断是否excel java并且判断_java 判断是否excel_04

输入格式

共一行,包含一个浮点数。

输出格式

如果公民需要缴税,则输出所需缴纳的税额。输出格式为 R$ X ,其中 X 为个税的金额,保留两位小数。

如果公民不需要缴税,则输出 Isento

数据范围

0 ≤ 公民工资 ≤ 5000

输入样例1:

3002.00

输出样例1:

R$ 80.36

输入样例2:

1700.00

输出样例2:

Isento

输入样例3:

4520.00

输出样例3:

R$ 355.60

样例解释

对于样例 1,0∼2000.00 部分不用缴税,2000.01∼3000.00 部分按 8% 的税率缴税,共计 1000×8%=80,3000.01∼3002.00 部分按 18% 的税率缴税,共计 2×18%=0.36,合计 80.36。

对于样例 2,公民收入未超过 2000,所以输出 Isento

对于样例 3,0∼2000.00 部分不用缴税,2000.01∼3000.00 部分按 8% 的税率缴税,共计 1000×8%=80,3000.01∼4500.00 部分按 18% 的税率缴税,共计 1500×18%=270,4500.01∼4520 部分按 28% 的税率缴税,共计 20×28%=5.60,合计 355.60。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double A = sc.nextDouble();
        double X = 0;
        if (2000 < A && A <= 3000) {
            X = (A-2000) * 0.08;
        } else if (3000 < A && A <= 4500) {
            X = (A - 3000) * 0.18 + 1000 * 0.08;
        } else if (4500 < A) {
            X = (A - 4500) * 0.28 + 1500 * 0.18 + 1000 * 0.08;
        } else {
            System.out.print("Isento");
            return;
        }
        System.out.printf("R$ %.2f", X);
    }
}

14.简单排序

读取三个整数并按升序对它们进行排序。

输入格式

共一行,包含三个整数。

输出格式

首先,将三个整数按升序顺序输出,每行输出一个整数。

然后,输出一个空行。

紧接着,将三个整数按原输入顺序输出,每行输出一个整数。

数据范围

−100 ≤ 输入整数 ≤ 100,
输入整数各不相同。

输入样例:

7 21 -14

输出样例:

-14
7
21


7
21
-14

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int A = sc.nextInt();
        int B = sc.nextInt();
        int C = sc.nextInt();
        int A1 = A;
        int B1 = B;
        int C1 = C;
        int t;
        if (A > B) {
            t = A;
            A = B;
            B = t;
        }
        if (B > C) {
            t = C;
            C = B;
            B = t;
        }
        if (A > B) {
            t = A;
            A = B;
            B = t;
        }
        System.out.println(A + "\n" + B + "\n" + C + "\n");
        System.out.print(A1 + "\n" + B1 + "\n" + C1);
    }
}

15.一元二次方程公式

读取三个浮点数 a,b,c 的值,利用一元二次方程求根公式对方程 ax2+bx+c=0

进行求解。

一元二次方程求根公式为:

java 判断是否excel java并且判断_System_05

如果

java 判断是否excel java并且判断_java 判断是否excel_06

导致方程无解或

java 判断是否excel java并且判断_输出格式_07

,则输出 Impossivel calcular

输入格式

输入三个浮点数 a,b,c。

输出格式

参照输出格式,输出方程的根,输出结果保留五位小数,如果无解则输出 Impossivel calcular

两个根可以按任意顺序输出,都算正确。

数据保证不存在只有一个解的情况。

数据范围

−1000.0 ≤ a,b,c ≤ 1000.0

输入样例:

10.0 20.1 5.1

输出样例:

R1 = -0.29788
R2 = -1.71212

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double a = sc.nextDouble();
        double b = sc.nextDouble();
        double c = sc.nextDouble();
        double d = b * b - 4 * a * c;
        if (d < 0 || a == 0) System.out.print("Impossivel calcular");
        else {
            double R1 = (-b + Math.sqrt(d)) / (2 * a);
            double R2 = (-b - Math.sqrt(d)) / (2 * a);
            System.out.printf("R1 = %.5f\nR2 = %.5f", R1, R2);
        }
    }
}

16.平均数3

读取 4 个数字

java 判断是否excel java并且判断_java_08

,

java 判断是否excel java并且判断_System_09

,

java 判断是否excel java并且判断_输出格式_10

,

java 判断是否excel java并且判断_java_11

,这 4 个数字都是保留 1 位小数的浮点数,对应于学生获得的 4 个分数。

这 4 个分数的权重分别为 2,3,4,1,请你计算学生成绩的平均值 X 并输出 Media: X

接下来分为以下三种情况:

  1. 如果平均值为 7.0 或更高,则输出 Aluno aprovado.
  2. 如果平均值小于 5.0,则输出 Aluno reprovado.
  3. 如果平均值大于等于 5.0 并且小于 7.0,则输出 Aluno em exame. ,并再读取一个数字 Y,然后输出 Nota do exame: Y 。接下来重新计算平均值 Z=(X+Y)/2,如果 Z 大于或等于 5.0,则输出 Aluno aprovado.,否则输出 Aluno reprovado.。最后输出 Media final: Z,表示学生的最终成绩。

输入格式

输入中包含四个浮点数,表示学生的四个成绩。

也有部分满足情况 3 的数据,多包含一个浮点数。

输出格式

输出的结果均保留 1 位小数,具体形式参照题目描述和输出样例。

数据范围

0 ≤ 输入数据 ≤ 10.0

输入样例1:

2.0 4.0 7.5 8.0
6.4

输出样例1:

Media: 5.4
Aluno em exame.
Nota do exame: 6.4
Aluno aprovado.
Media final: 5.9

输入样例2:

2.0 6.6 4.0 9.0

输出样例2:

Media: 4.9
Aluno reprovado.

输入样例3:

9.0 4.0 8.5 9.0

输出样例3:

Media: 7.3
Aluno aprovado.

import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        double n1 = sc.nextDouble();
        double n2 = sc.nextDouble();
        double n3 = sc.nextDouble();
        double n4 = sc.nextDouble();
        double X = n1 * 0.2 + n2 * 0.3 + n3 * 0.4 + n4 * 0.1;
        System.out.printf("Media: %.1f\n", X);
        if (X >= 7.0) System.out.print("Aluno aprovado.");
        else if (X < 5.0) {
            System.out.print("Aluno reprovado.");
        } else if (X >= 5.0 && X < 7.0) {
            System.out.println("Aluno em exame.");
            double Y = sc.nextDouble();
            System.out.printf("Nota do exame: %.1f\n", Y);
            double Z = (X + Y) / 2;
            if (Z >= 5.0) {
                System.out.println("Aluno aprovado.");
            } else {
                System.out.println("Aluno reprovado.");
            }
            System.out.printf("Media final: %.1f", Z);
        }
    }
}