编程初学者入门训练-三角形判断

目录

  1. 衡量人体胖瘦程度
  2. 三角形判断
  3. 判断两个数的大小关系
  4. 字母大小写转换
  5. 判断是不是字母

1.题目描述

在计算BMI(BodyMassIndex ,身体质量指数)的案例基础上,判断人体胖瘦程度。BMI中国标准如下表所示。
在这里插入图片描述

1.1输入描述

多组输入,每一行包括两个整数,用空格隔开,分别为体重(公斤)和身高(厘米)。

1.2输出描述

针对每行输入,输出为一行,人体胖瘦程度,即分类。

1.3示例1

输入

80 170
60 170
90 160
50 185

输出

Overweight
Normal
Obese
Underweight

1.4代码实现

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    	String in = input.readLine();
        while(in!= null){
            String[] strs = in.split(" ");
            int weight= Integer.parseInt(strs[0]);    //体重(公斤)
            double height = Double.parseDouble(strs[1])/100;    //身高(米)
            double BMI =  weight/Math.pow(height, 2);
            if(BMI<18.5){
                System.out.println("Underweight");
            }else if(BMI>=18.5 && BMI<=23.9){
                System.out.println("Normal");
            }else if(BMI>23.9 && BMI<=27.9){
                System.out.println("Overweight");
            }else{
                System.out.println("Obese");
            }
            in = input.readLine();
        }
    }
}

2.题目描述

KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。

2.1输入描述

题目有多组输入数据,每一行输入三个a,b,c(0<a,b,c<1000),作为三角形的三个边,用空格分隔。

2.2输出描述

针对每组输入数据,输出占一行,如果能构成三角形,等边三角形则输出“Equilateral triangle!”,等腰三角形则输出“Isosceles triangle!”,其余的三角形则输出“Ordinary triangle!”,反之输出“Not a triangle!”。

2.3示例1

输入

2 3 2
3 3 3

输出

Isosceles triangle!
Equilateral triangle!

2.4代码实现

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    	String in = input.readLine();
        while(in!= null){
            String[] strs = in.split(" ");
            int a = Integer.parseInt(strs[0]);
            int b = Integer.parseInt(strs[1]);
            int c = Integer.parseInt(strs[2]);
            if((a+b)>c && (a+c)>b && (b+c)>a){
                if(a==b && a==c){
                    System.out.println("Equilateral triangle!");
                }else if(a==b || a==c || b==c){
                    System.out.println("Isosceles triangle!");
                }else{
                    System.out.println("Ordinary triangle!");
                }
            }else{
                System.out.println("Not a triangle!");
            }
            in = input.readLine();
        }
    }
}

3.题目描述

KiKi想知道从键盘输入的两个数的大小关系,请编程实现。

3.1输入描述

题目有多组输入数据,每一行输入两个整数(范围(1 ~231-1),用空格分隔。

3.2输出描述

针对每行输入,输出两个整数及其大小关系,数字和关系运算符之间没有空格,详见输入输出样例。

3.3示例1

输入

1 1

输出

1=1

3.4示例2

输入

1 0

输出

1>0

3.5示例3

输入

0 1

输出

0<1

3.6代码实现

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    	String in = input.readLine();
        while(in!= null){
            String[] strs = in.split(" ");
            int a = Integer.parseInt(strs[0]);
            int b = Integer.parseInt(strs[1]);
            if(a == b){
                System.out.println(a+"="+b);
            }else if(a > b){
                System.out.println(a+">"+b);
            }else{
                System.out.println(a+"<"+b);
            }
            in = input.readLine();
        }
    }
}

4.题目描述

KiKi想完成字母大小写转换,有一个字符,判断它是否为大写字母,如果是,将它转换成小写字母;反之则转换为大写字母。

4.1输入描述

多组输入,每一行输入一个字母。

4.2输出描述

针对每组输入,输出单独占一行,输出字母的对应形式。

4.3示例1

输入

a
A
Z

输出

A
a
z

4.4代码实现

import java.util.Scanner;
import java.io.IOException;

public class Main{
    public static void main(String[] args) throws IOException{
        Scanner input = new Scanner(System.in);
        while(input.hasNext()){
            char in = input.next().charAt(0);
            if(Character.isUpperCase(in)){
                System.out.println(Character.toLowerCase(in));
            }else{
                System.out.println(Character.toUpperCase(in));
            }
        }
    }
}

5.题目描述

KiKi想判断输入的字符是不是字母,请帮他编程实现。

5.1输入描述

多组输入,每一行输入一个字符。

5.2输出描述

针对每组输入,输出单独占一行,判断输入字符是否为字母,输出内容详见输出样例。

5.3示例1

输入

A
6

输出

A is an alphabet.
6 is not an alphabet.

5.4代码实现

import java.util.Scanner;
import java.io.IOException;

public class Main{
    public static void main(String[] args) throws IOException{
        Scanner input = new Scanner(System.in);
        while(input.hasNext()){
            char in = input.next().charAt(0);
            if(Character.isUpperCase(in)||Character.isLowerCase(in)){
                System.out.println(in+" is an alphabet.");
            }else{
                System.out.println(in+" is not an alphabet.");
            }
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值