1、继承身高问题
身高是具有遗传性的,子女的身高和父母的身高有一定的关系。假定,父母和子女的身高遗传关系如下: 儿子身高(厘米)=(父亲身高+母亲身高) ×1.08÷2 女儿身高(厘米)=(父亲身高×0.923+母亲身高) ÷2 现有父亲身高177CM,母亲身高165CM。求子女身高分别预计为多少?
public class Test1 {
public static void main(String[] args) {
double fatherHight = 177.0;
double motherHight = 165.0;
double sonHight = (fatherHight + motherHight) * 1.08 / 2;
double daughterHight = (fatherHight * 0.923 + motherHight) / 2;
System.out.println(sonHight);
System.out.println(daughterHight);
}
}
2、判断两个妹妹的钱是否相同
红茶妹妹有21元钱,她攒了几天钱之后自己的钱比原来的两倍还多三块。 绿茶妹妹有24元钱,她攒了几天钱之后自己的钱正好是原来的两倍。 那么红茶和绿茶现在的钱一样多,请问对么?
public class Test2 {
public static void main(String[] args) {
int redMoney = 21 * 2 + 3;
int greenMoney = 24 * 2;
String rel = redMoney == greenMoney ? "相同" : "不同";
System.out.println(rel);
}
}
3、外卖优惠问题
某小伙想定一份外卖,商家的优惠方式如下:鱼香肉丝单点24元,油炸花生米单点8元,米饭单点3元。 订单满30元8折优惠。鱼香肉丝优惠价16元,但是优惠价和折扣不能同时使用。 那么这个小伙要点这三样东西,最少要花多少钱?
public class Test3 {
public static void main(String[] args) {
double firstWay = (24 + 8 + 3) * 0.8;
int secondWay = 16 + 8 + 3;
double rel = firstWay > secondWay ? secondWay : firstWay;
System.out.println("最少花费" + rel + "元");
}
}
4、键盘录入一个三位数,求这个三位数每一位的数字和
(本题我利用了循环语句,可以自行尝试不用循环语句写出)
public class Test4 {
public static void main(String[] args) {
int sum = 0;
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
while (num != 0) {
int last = num % 10;
sum = sum + last;
num /= 10;
}
System.out.println(sum);
}
}
5、键盘录入一个任意正数,求这个数每位的值
(while循环的详细说明)
public class Test5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt(); // 输入一个任意正数,这里以 123 为例
while (num != 0) { // 当 num 里面存放的数不等于 0 的时候进行循环
int last = num % 10; // 定义一个变量存放输入数字的最后一位数,123 % 10 = 3,此时last = 3
System.out.println(last); // 输出当前 last 的值:3
num = num / 10; // 将最右边的那个数去掉,当前 num = 123,将 123 / 10 的值 12 赋给 num
// 也就是用 12 将原来的数给覆盖掉了
}
}
// 这个时候循环还没有结束因为 12 != 0
// 12 % 10 = 2,此时 last = 2
// 输出当前 last 的值:2
// 将最右边的那个数去掉,当前 num = 12,将 12 / 10 的值 1 赋给 num
// 1 != 0 所以循环继续
// 1 % 10 = 1,此时 last = 1
// 输出当前 last 的值:1
// 将最右边的那个数去掉,当前 num = 1,将 1 / 10 的值 0 赋给 num
// 因为现在 num = 0 不满足 num != 0 了,所以结束循环
}