Java基础2.1
一.实例学习:计算身体指标
1.BML的值可以通过以千克为单位的体重除以以米为单位的身高的平方
2.BML<18.5(偏瘦) ,18.5<=BML<25.0(正常) ,25.0<=BML<30.0(超重) ,30.0<=BML(过胖)。
3.要求:编写程序,提示用户输入以千克为单位的体重,以及以米为单位的身高,然后显示BML。
import iava.util.Scanner;
public class ComputerAndInterpretBML{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("Enter weight in kg:")
double weight = input.nextDouble();
System.out.print("Enter height in meter:")
double height = input.nextDouble();
double bmi = weight/(height * /height);
System.out.println("BMI is" + bmi);
if(bmi < 18.5)
System.out.println("underweight");
else if (bmi <25)
System.out.println("Normal");
else if (bmi < 30)
System.our.println("Overweight");
else
System.out.println("Obese")
}
}
。
。
二.逻辑操作符
操作符 | 名称(说明) |
---|---|
! | 非(逻辑非) |
&& | 与(逻辑与) |
^ | 异或(逻辑或) |
补充:操作符:|| 意味着或
1.示例学习:判断闰年
要点提示:如果某年可以被4整除而不能被100整除,或者可以被400整除,那么这一年就是闰年
import java.util.Scanner;
public class LeapYear{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("Enter a year:");
int year = input.nextInt();
boolean isLeapYear = (year % 4 ==0 && year % 100 ! =0)||(year % 400 ==0);
System.out.println(year +" is a leap year? " + isLeapYear );
}
}
2.示例学习:彩票
要点提示:
- 彩票程序设及产生随机数、比较数字各位,以及运用布尔操作符。
- 规则1:如果用户的输入从顺序到数字都匹配彩票数字,奖金为10000元。
- 规则2:如果用户输入的所有数字匹配彩票的所有数字,奖金为3000元。
- 规则3:如果用户输入的一个数字匹配彩票的一个数字,奖金为1000元。
- 注意:两位数字中可能有一位为0.如果一个数小于10,我们假设这个数字以0开始,从而构建一个两位数。例如,程序中数字8被作为08处理,数字0作为00处理
- 输入的数和彩票数都是两位数。
import java.util.Scanner;
public class Lottery
{
public static void main(String[] args)
{
//使用random()方法创建一个彩票数
int lottery = (int)(Math.random() * 100);
Scanner input = new Scanner(System.in);
System.out.print("Enter your lottery pick (two digits):");//提示用户输入猜测值
int guess = input.nextInt();
int lotteryDigit1 = lottery / 10; //得到lottery第一位数
int lotteryDigit2 = lottery % 10;//得到lottery末位数
int guessDigit1 = guess / 10;
int guessDigit2 = guess %10;
System.out.println("The lottery number is " + lottery);
if (guess == lottery)
System.out.println("Exact match: you win 10000 yuan");
else if ((guessDigit2 == lotteryDigit1) && (guessDigit1 == lotteryDigit2))
System.out.println("Match all digits: you win 3000 yuan");
else if((guessDigit1 == lotteryDigit1) || (guessDigit1 == lotteryDigit2) || (guessDigit2 == lotteryDigit2))
System.out.println("Match one digit :you win 1000 yuan");
else
System.out.println("Sorry, no match");
}
}