创建类Calc,定义2个数属性以及一个符号属性,编写4个方法add、minus、multiply、divide,4个方法分别进行2个小数的加、减、乘、除运算.在主函数里面接受用户输入2个运算数、1个运算符,根据该运算符选择应该调用哪一个方法进行运算。
定义10名学生,循环接收10名学员的身高,然后给学员进行编号,输出最高的学员的信息
合理使用类和方法
提示:
定义学生类
Student
int id (编号)
double height(身高)
定义Height(功能类)类
方法 Student maxHeight(Student[] s)
查找身高最高的方法,参数为学生数组,返回值为学生对象
建立测试类(Test)
主方法(main)
演示:
请输入第1个学生的身高:170
请输入第2个学生的身高: 190
…..
最高的学生的编号是 5 身高是:210
某电信公司的市内通话费计算标准如下:三分钟内0.2元,三分钟后每增加一分钟增加0.1元,不足一分钟的按一分 钟计算。要求编写程序,给定一个通话时间(单位:秒)计算出应收费金额。(有问题)
import java.util.Scanner; public class TelephoneBillCalculator { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入通话时间(秒):"); int seconds = scanner.nextInt(); int minutes = seconds / 60; // 将秒转换为分钟 int remainingSeconds = seconds % 60; // 剩余的秒数 double bill = calculateBill(minutes, remainingSeconds); System.out.println("应收费用:" + bill + "元"); scanner.close(); } public static double calculateBill(int minutes, int seconds) { final double INITIAL_RATE = 0.2; // 前3分钟的费率 final double ADDITIONAL_RATE = 0.1; // 超过3分钟后每分钟增加的费率 double bill = INITIAL_RATE; // 检查是否超过3分钟 if (minutes > 3) { int additionalMinutes = minutes - 3; bill += additionalMinutes * ADDITIONAL_RATE; } // 检查是否存在剩余的秒数 if (seconds > 0) { bill += ADDITIONAL_RATE; } return bill; } }
万年历,从控制台输入 × × × ×年× ×月,从控制台输出该月日历(1900年1月1日是星期一)
import java.util.HashSet; import java.util.Scanner; import java.util.Set; public class Test { // 3.写程序获取一百个不重复的随机数 // Set set = new HashSet(); while(set.size() != 100){ int num = (int )(Math.random()*100); set.add(num); } System.out.println(set); // public static double calc(int duration){ // double cost = 0; // int minutes = duration/60; // int seconds = duration%60; // if(minutes < 3){ // cost += 0.2; // }else{ // cost += 3*0.2; // } // // 计算三分钟后每增加一分钟的费用 // if (minutes > 3) { // cost += (minutes - 3) * 0.1; // } // // // 不足一分钟的按一分钟计算 // if (seconds > 0) { // cost += 0.1; // } // return cost; // } // //public static void main(String[] args) { // // System.out.println("请输入你的通话分钟数:(单位:秒)"); // Scanner scanner = new Scanner(System.in); // int duration = scanner.nextInt(); // double cost = calc(duration); // System.out.println("需要话费:" + cost); // // } //} public static double calculateCallCost(int duration) { double cost = 0.0; int minutes = duration / 60; // 转换为分钟 int seconds = duration % 60; // 不足一分钟的秒数 // 计算三分钟内的费用 if (minutes < 3) { cost += minutes * 0.2; } else { cost += 3 * 0.2; // 超过三分钟先加上三分钟的费用 } // 计算三分钟后每增加一分钟的费用 if (minutes > 3) { cost += (minutes - 3) * 0.1; } // 不足一分钟的按一分钟计算 if (seconds > 0) { cost += 0.1; } return cost; } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入通话时间(单位:秒): "); int duration = scanner.nextInt(); double cost = calculateCallCost(duration); System.out.println("应收费金额为:" + cost + "元"); scanner.close(); } } //import java.util.Scanner; // //public class CallCostCalculator { // public static double calculateCallCost(int duration) { // double cost = 0.0; // int minutes = duration / 60; // 转换为分钟 // int seconds = duration % 60; // 不足一分钟的秒数 // // // 计算三分钟内的费用 // if (minutes < 3) { // cost += minutes * 0.2; // } else { // cost += 3 * 0.2; // 超过三分钟先加上三分钟的费用 // } // // // 计算三分钟后每增加一分钟的费用 // if (minutes > 3) { // cost += (minutes - 3) * 0.1; // } // // // 不足一分钟的按一分钟计算 // if (seconds > 0) { // cost += 0.1; // } // // return cost; // } // // public static void main(String[] args) { // Scanner scanner = new Scanner(System.in); // System.out.print("请输入通话时间(单位:秒): "); // int duration = scanner.nextInt(); // // double cost = calculateCallCost(duration); // System.out.println("应收费金额为:" + cost + "元"); // // scanner.close(); // } //}