目录
- 衡量人体胖瘦程度
- 三角形判断
- 判断两个数的大小关系
- 字母大小写转换
- 判断是不是字母
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.");
}
}
}
}